Aracılığıyla paylaş


OleDbDataReader.GetSchemaTable Yöntem

Tanım

sütun meta verilerini OleDbDataReaderaçıklayan bir DataTable döndürür.

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

Döndürülenler

DataTable Sütun meta verilerini açıklayan bir.

Uygulamalar

Özel durumlar

Açıklamalar

GetSchemaTable yöntemi OLE DB IColumnsRowset::GetColumnsRowset yöntemiyle eşler ve her sütunla ilgili meta verileri aşağıdaki sırayla döndürür:

DataReader sütunu OLE DB sütun kimliği Description
ColumnName DBCOLUMN_NAME Sütunun adı; bu benzersiz olmayabilir. Bu belirlenemezse bir null değer döndürülür. Bu ad her zaman geçerli görünümde veya komut metninde sütunun en son yeniden adlandırmasını yansıtır.
ColumnOrdinal DBCOLUMN_NUMBER Sütunun sıfır tabanlı sıralı kısmı. Bu sütun null değer içeremez.
Columnsize DBCOLUMN_COLUMNSIZE Sütundaki bir değerin mümkün olan en büyük uzunluğu. Sabit uzunlukta veri türü kullanan sütunlar için bu, veri türünün boyutudur.
Numericprecision DBCOLUMN_PRECISION DbType sayısal bir veri türüyse, bu sütunun en yüksek duyarlığıdır. veri türü DBTYPE_DECIMAL veya DBTYPE_NUMERIC olan sütunların duyarlığı, sütunun tanımına bağlıdır. DbType sayısal bir veri türü değilse, bu bir null değerdir.
Numericscale DBCOLUMN_SCALE DbType DBTYPE_DECIMAL veya DBTYPE_NUMERIC ise, bu ondalık ayırıcının sağındaki basamak sayısıdır. Aksi takdirde, bu null bir değerdir.
DataType Hiçbiri Sütunun .NET Framework türüyle eşler.
Providertype DBCOLUMN_TYPE Sütunun veri türünün göstergesi. Sütunun veri türü satırdan satıra değişiyorsa, bunun DBTYPE_VARIANT olması gerekir. Bu sütun null değer içeremez.
Islong DBCOLUMNFLAGS_ISLONG Sağlayıcı, sütunda çok uzun veriler içeren bir İkili Uzun Nesne (BLOB) varsa DBCOLUMNFLAGS_ISLONG ayarlar. Çok uzun verilerin tanımı sağlayıcıya özgüdür. Bu bayrağın ayarı, veri türü için PROVIDER_TYPES satır kümesindeki IS_LONG sütununun değerine karşılık gelir.
Allowdbnull DBCOLUMNFLAGS_ISNULLABLE Sağlayıcı, tüketicinin sütunu null değere ayarlayıp ayarlayamayacağını veya sağlayıcının sütunu null değere ayarlayıp ayarlayamayacağını belirleyemediğini DBCOLUMNFLAGS_ISNULLABLE ayarlar. Bir sütun null değere ayarlanamasa bile null değerler içerebilir.
IsReadOnly DBCOLUMNFLAGS_WRITE true sütun değiştirilemiyorsa; aksi takdirde false. Sağlayıcı DBCOLUMNFLAGS_WRITE veya DBCOLUMNFLAGS_WRITEUNKNOWN bayrağını ayarlamışsa sütunun yazılabilir olduğu varsayılır.
IsRowVersion DBCOLUMNFLAGS_ISROWID Sağlayıcı, sütunun yazılamayan kalıcı bir satır tanımlayıcısı içeriyorsa ve satırın kimliğini belirleme dışında anlamlı bir değeri yoksa DBCOLUMNFLAGS_ISROWID ayarlar.
Isunique DBCOLUMN_ISUNIQUE VARIANT_TRUE: Temel tablodaki iki satır (BaseTableName'de döndürülen tablo) bu sütunda aynı değere sahip olamaz. Sütunun tek başına bir anahtarı temsil ettiği veya yalnızca bu sütun için geçerli olan UNIQUE türünde bir kısıtlama varsa IsUnique'in VARIANT_TRUE olması garanti edilir.

VARIANT_FALSE: Sütun, temel tabloda yinelenen değerler içerebilir. Bu sütunun varsayılanı VARIANT_FALSE.
Iskey DBCOLUMN_KEYCOLUMN VARIANT_TRUE: Sütun, satır kümesinde bir araya gelen ve satırı benzersiz olarak tanımlayan bir sütun kümesidir. IsKey değeri VARIANT_TRUE olarak ayarlanmış sütun kümesinin satır kümesindeki bir satırı benzersiz olarak tanımlaması gerekir. Bu sütun kümesinin en az sayıda sütun olması gerekmez. Bu sütun kümesi temel tablo birincil anahtarından, benzersiz bir kısıtlamadan veya benzersiz bir dizinden oluşturulabilir.

VARIANT_FALSE: Sütunun satırı benzersiz olarak tanımlaması gerekmez.
IsAutoIncrement DBCOLUMN_ISAUTOINCREMENT VARIANT_TRUE: Sütun, değerleri sabit artışlarla yeni satırlara atar.

VARIANT_FALSE: Sütun, sabit artışlarla yeni satırlara değer atamaz. Bu sütunun varsayılanı VARIANT_FALSE.
BaseSchemaName DBCOLUMN_BASESCHEMANAME Sütunu içeren veri deposundaki şemanın adı. Temel şema adı belirlenemiyorsa null değer. Bu sütunun varsayılan değeri null değerdir.
BaseCatalogName DBCOLUMN_BASECATALOGNAME Sütunu içeren veri deposundaki kataloğun adı. Temel katalog adı belirlenemiyorsa null değer. Bu sütunun varsayılan değeri null değerdir.
Basetablename DBCOLUMN_BASETABLENAME Sütunu içeren veri deposundaki tablonun veya görünümün adı. Temel tablo adı belirlenemiyorsa null değer. Bu sütunun varsayılan değeri null değerdir.
BaseColumnName DBCOLUMN_BASECOLUMNNAME Veri deposundaki sütunun adı. Bu, diğer ad kullanıldıysa ColumnName sütununda döndürülen sütun adından farklı olabilir. Temel sütun adı belirlenemiyorsa veya satır kümesi sütunu türetildiyse ancak veri deposundaki bir sütunla aynı değilse null değer. Bu sütunun varsayılan değeri null değerdir.

Not

Meta veri sütunlarının doğru bilgileri döndürdiğinden emin olmak için parametresi olarak ayarlanmış KeyInfoolarak çağırmanız ExecuteReaderbehavior gerekir. Aksi takdirde, şema tablosundaki sütunlardan bazıları varsayılan, null veya yanlış veriler döndürebilir.

Şunlara uygulanır

Ayrıca bkz.