OleDbDataReader.GetSchemaTable Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Retourneert een DataTable die de kolommetagegevens van de OleDbDataReader.
public:
override System::Data::DataTable ^ GetSchemaTable();
public:
virtual System::Data::DataTable ^ GetSchemaTable();
public override System.Data.DataTable? GetSchemaTable();
public System.Data.DataTable GetSchemaTable();
public override System.Data.DataTable GetSchemaTable();
override this.GetSchemaTable : unit -> System.Data.DataTable
abstract member GetSchemaTable : unit -> System.Data.DataTable
override this.GetSchemaTable : unit -> System.Data.DataTable
Public Overrides Function GetSchemaTable () As DataTable
Public Function GetSchemaTable () As DataTable
Retouren
Een DataTable die de metagegevens van de kolom beschrijft.
Implementeringen
Uitzonderingen
De OleDbDataReader is gesloten.
Opmerkingen
De GetSchemaTable methode wordt toegewezen aan de OLE DB IColumnsRowset::GetColumnsRowset-methode en retourneert metagegevens over elke kolom in de volgende volgorde:
| DataReader-kolom | OLE DB-kolom-id | Beschrijving |
|---|---|---|
| ColumnName | DBCOLUMN_NAME | De naam van de kolom; dit is mogelijk niet uniek. Als dit niet kan worden bepaald, wordt een null-waarde geretourneerd. Deze naam weerspiegelt altijd de meest recente naamgeving van de kolom in de huidige weergave of opdrachttekst. |
| ColumnOrdinal | DBCOLUMN_NUMBER | Het op nul gebaseerde rangnummer van de kolom. Deze kolom mag geen null-waarde bevatten. |
| Kolomgrootte | DBCOLUMN_COLUMNSIZE | De maximale lengte van een waarde in de kolom. Voor kolommen die een gegevenstype met een vaste lengte gebruiken, is dit de grootte van het gegevenstype. |
| Numeriekeprecisie | DBCOLUMN_PRECISION | Als DbType een numeriek gegevenstype is, is dit de maximale precisie van de kolom. De precisie van kolommen met een gegevenstype DBTYPE_DECIMAL of DBTYPE_NUMERIC is afhankelijk van de definitie van de kolom. Als DbType geen numeriek gegevenstype is, is dit een null-waarde. |
| Numericscale | DBCOLUMN_SCALE | Als DbType DBTYPE_DECIMAL of DBTYPE_NUMERIC is, is dit het aantal cijfers rechts van het decimaalteken. Anders is dit een null-waarde. |
| Gegevenstype | Geen | Hiermee wordt het .NET type kolom toegewezen. |
| ProviderType | DBCOLUMN_TYPE | De indicator van het gegevenstype van de kolom. Als het gegevenstype van de kolom verschilt van rij tot rij, moet dit DBTYPE_VARIANT zijn. Deze kolom mag geen null-waarde bevatten. |
| IsLong | DBCOLUMNFLAGS_ISLONG | De provider stelt DBCOLUMNFLAGS_ISLONG in als de kolom een Binary Long Object (BLOB) bevat die zeer lange gegevens bevat. De definitie van zeer lange gegevens is providerspecifiek. De instelling van deze vlag komt overeen met de waarde van de kolom IS_LONG in de PROVIDER_TYPES rijenset voor het gegevenstype. |
| AllowDBNull | DBCOLUMNFLAGS_ISNULLABLE | De provider stelt DBCOLUMNFLAGS_ISNULLABLE in als de consument de kolom kan instellen op een null-waarde of als de provider niet kan bepalen of de kolom kan worden ingesteld op een null-waarde. Een kolom kan null-waarden bevatten, zelfs als deze niet kan worden ingesteld op een null-waarde. |
| IsReadOnly | DBCOLUMNFLAGS_WRITE |
true als de kolom niet kan worden gewijzigd; anders false. De kolom wordt verondersteld schrijfbaar te zijn als de provider de DBCOLUMNFLAGS_WRITE of DBCOLUMNFLAGS_WRITEUNKNOWN vlag heeft ingesteld. |
| IsRowVersion | DBCOLUMNFLAGS_ISROWID | De provider stelt DBCOLUMNFLAGS_ISROWID in als de kolom een permanente rij-id bevat waarnaar niet kan worden geschreven en geen zinvolle waarde heeft, behalve de identiteit van de rij. |
| IsUnique | DBCOLUMN_ISUNIQUE | VARIANT_TRUE: Er kunnen geen twee rijen in de basistabel worden geretourneerd in BaseTableName, dezelfde waarde hebben in deze kolom. IsUnique is gegarandeerd VARIANT_TRUE als de kolom een sleutel zelf vertegenwoordigt of als er een beperking van het type UNIQUE is die alleen van toepassing is op deze kolom. VARIANT_FALSE: De kolom kan dubbele waarden in de basistabel bevatten. De standaardwaarde van deze kolom is VARIANT_FALSE. |
| IsKey | DBCOLUMN_KEYCOLUMN | VARIANT_TRUE: De kolom is een van een set kolommen in de rijenset die samen de rij uniek identificeren. De set kolommen waarvoor IsKey is ingesteld op VARIANT_TRUE moet een rij in de rijenset uniek identificeren. Er is geen vereiste dat deze set kolommen een minimale set kolommen is. Deze set kolommen kan worden gegenereerd op basis van een primaire basistabelsleutel, een unieke beperking of een unieke index. VARIANT_FALSE: De kolom is niet vereist om de rij uniek te identificeren. |
| IsAutoIncrement | DBCOLUMN_ISAUTOINCREMENT | VARIANT_TRUE: De kolom wijst waarden toe aan nieuwe rijen in vaste stappen. VARIANT_FALSE: De kolom wijst geen waarden toe aan nieuwe rijen in vaste stappen. De standaardwaarde van deze kolom is VARIANT_FALSE. |
| BaseSchemaName | DBCOLUMN_BASESCHEMANAME | De naam van het schema in het gegevensarchief dat de kolom bevat. Een null-waarde als de naam van het basisschema niet kan worden bepaald. De standaardwaarde van deze kolom is een null-waarde. |
| BaseCatalogName | DBCOLUMN_BASECATALOGNAME | De naam van de catalogus in het gegevensarchief dat de kolom bevat. Een null-waarde als de naam van de basiscatalogus niet kan worden bepaald. De standaardwaarde van deze kolom is een null-waarde. |
| BaseTableName | DBCOLUMN_BASETABLENAME | De naam van de tabel of weergave in het gegevensarchief dat de kolom bevat. Een null-waarde als de naam van de basistabel niet kan worden bepaald. De standaardwaarde van deze kolom is een null-waarde. |
| BaseColumnName | DBCOLUMN_BASECOLUMNNAME | De naam van de kolom in het gegevensarchief. Dit kan afwijken van de kolomnaam die wordt geretourneerd in de kolom ColumnName als er een alias is gebruikt. Een null-waarde als de naam van de basiskolom niet kan worden bepaald of als de rijsetkolom is afgeleid, maar niet identiek is aan, een kolom in het gegevensarchief. De standaardwaarde van deze kolom is een null-waarde. |
Note
Als u ervoor wilt zorgen dat metagegevenskolommen de juiste informatie retourneren, moet ExecuteReader u de behavior parameter instellen op KeyInfo. Anders kunnen sommige kolommen in de schematabel standaardgegevens, null of onjuiste gegevens retourneren.