SqlDataReader.GetSchemaTable Yöntem

Tanım

sütun meta verilerini DataTableaçıklayan bir SqlDataReader döndürür.

public:
 virtual System::Data::DataTable ^ GetSchemaTable();
public:
 override System::Data::DataTable ^ GetSchemaTable();
public System.Data.DataTable GetSchemaTable();
public override System.Data.DataTable GetSchemaTable();
abstract member GetSchemaTable : unit -> System.Data.DataTable
override this.GetSchemaTable : unit -> System.Data.DataTable
override this.GetSchemaTable : unit -> System.Data.DataTable
Public Function GetSchemaTable () As DataTable
Public Overrides Function GetSchemaTable () As DataTable

Döndürülenler

DataTable Sütun meta verilerini açıklayan.

Uygulamalar

Özel durumlar

Açıklamalar

GetSchemaTable yöntemi her sütun hakkında aşağıdaki meta verileri döndürür:

DataReader sütunu Açıklama
Allowdbnull 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 ayarlayın. Aksi takdirde ayarlanmaz. Bir sütun null değere ayarlanamasa bile null değerler içerebilir.
BaseCatalogName Sütunu içeren veri deposundaki kataloğun adı. Temel katalog adı belirlenemiyorsa NULL. Bu sütunun varsayılan değeri null değerdir.
BaseColumnName Veri deposundaki sütunun adı. Diğer ad kullanıldıysa bu, 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.
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.
BaseServerName SqlDataReader tarafından kullanılan Microsoft SQL Server örneğinin adı.
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.
ColumnName Sütunun adı; bu benzersiz olmayabilir. Bu belirlenemezse, null bir 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 Sütunun sıfır tabanlı sıralı. Bu sütun null değer içeremez.
Sütun Boyutu Sütundaki bir değerin mümkün olan en uzun uzunluğu. Sabit uzunlukta veri türü kullanan sütunlar için bu, veri türünün boyutudur. nvarchar(MAX), varchar(MAX) ve SQL Server veritabanında depolanan varbinary(MAX) sütunları için boyut üst sınırı 2 GB'tır. Bu sütunlar dosya olarak depolanıyor ve bunlara erişiliyorsa, en büyük boyut sınırı dosya sistemi tarafından uygulanır. bağlantı dizesi Type System Version anahtar sözcüğü kullanılırken bu değer değişir. Yeni türler için bunlar alt düzey türleri olarak temsil edilir. MAX veri türleri için normal 4k ve için nvarcharvarchar8000 döndürür. Daha fazla bilgi için bkz. Transact-SQL başvurusu.
DataTypeName Belirtilen sütunun veri türünü temsil eden bir dize döndürür.
IsAliased true: Sütun adı bir diğer addır.

false: Sütun adı bir diğer ad değildir.
IsAutoIncrement true: Sütun, değerleri sabit artışlarla yeni satırlara atar.

false: Sütun, sabit artışlarla yeni satırlara değer atamaz. Bu sütunun varsayılan değeridir false.
IsColumnSet true: Sütun, bir sütun kümesinin üyesi olan seyrek bir sütundur.
Isexpression true: Sütun bir ifadedir.

false: Sütun bir ifade değil.
GizliMi? true: Sütun gizlidir.

false: Sütun gizli değil.
IsIdentity true: Sütun bir kimlik sütunudur.

false: Sütun bir kimlik sütunu değildir.
Iskey true: Sütun, satır kümesinde bir araya gelen ve satırı benzersiz olarak tanımlayan bir sütun kümesidir. olarak ayarlanmış true sütun IsKey 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.

false: Sütunun satırı benzersiz olarak tanımlaması gerekmez.
IsLong true: Sütun, çok uzun veriler içeren bir İkili Uzun Nesne (BLOB) içerir. Çok uzun verilerin tanımı sağlayıcıya özgüdür.

false: Sütun, çok uzun veriler içeren bir İkili Uzun Nesne (BLOB) içermez.
IsReadOnly true: Sütun değiştirilemez.

false: Sütun değiştirilebilir.
IsRowVersion true: Sütun, yazılamayan kalıcı bir satır tanımlayıcısı içerir ve satırın kimliğini belirleme dışında anlamlı bir değeri yoktur.

false: Sütun, yazılamayan kalıcı bir satır tanımlayıcısı içermez ve satırın kimliğini belirleme dışında anlamlı bir değeri yoktur.
IsUnique true: Sütun türündedir timestamp.

false: Sütun türünde timestampdeğil.
NonVersionedProviderType bağlantı dizesi belirtilen geçerli Type System Version bağımsız olarak sütunun türü. Döndürülen değer sabit listesidir SqlDbType .
Numericprecision Sayısal bir veri türüyse ProviderType bu, sütunun en yüksek duyarlığıdır. Duyarlık, sütunun tanımına bağlıdır. Sayısal veri türü değilse ProviderType , bu 255'tir.
Numericscale ProviderType DBTYPE_DECIMAL veya DBTYPE_NUMERIC ise, ondalık ayırıcının sağındaki basamak sayısı. Aksi takdirde, bu 255'tir.
ProviderSpecificDataType bağlantı dizesi Type System Version anahtar sözcüğüne göre sütunun sağlayıcıya özgü veri türünü döndürür.
ProviderType Sütunun veri türünün göstergesi. Sütunun veri türü satırdan satıra değişiyorsa, bu Nesne olmalıdır. Bu sütun null değer içeremez.
UdtAssemblyQualifiedName Sütun kullanıcı tanımlı bir tür (UDT) ise, bu, UDT'nin derlemesinin uygun AssemblyQualifiedNameadıdır. Sütun bir UDT değilse, bu null olur.
Xmlschemacollectiondatabase Satır bir XML sütunu hakkında bilgi içeriyorsa, bu XML örneğinin şema koleksiyonunun bulunduğu veritabanının adı. Koleksiyon geçerli veritabanında tanımlanmışsa bu değer null (Visual Basic'da Nothing). Ayrıca, şema koleksiyonu XmlSchemaCollectionNameXmlSchemaCollectionOwningSchema yoksa ve sütunları da null olur.
Xmlschemacollectionname Satır bir XML sütunu hakkında bilgi içeriyorsa, bu XML örneğinin şema koleksiyonunun adı. İlişkili şema koleksiyonu yoksa bu değer null (Visual Basic'da Nothing) olur. Değer null XmlSchemaCollectionDatabase ise ve XmlSchemaCollectionOwningSchema sütunları da null olur.
XmlSchemaCollectionOwningSchema Satır bir XML sütunu hakkında bilgi içeriyorsa, bu XML örneğinin şema koleksiyonunun bulunduğu sahip olan ilişkisel şema. Koleksiyon geçerli veritabanında tanımlanmışsa bu değer null (Visual Basic'da Nothing). Ayrıca, şema koleksiyonu XmlSchemaCollectionDatabaseXmlSchemaCollectionName yoksa ve sütunları da null olur.

Note

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

Şunlara uygulanır

Ayrıca bkz.