SQL Server Şema Koleksiyonları

SQL Server için Microsoft .NET Framework Veri Sağlayıcısı, ortak şema koleksiyonlarına ek olarak ek şema koleksiyonlarını destekler. Şema koleksiyonları, kullandığınız SQL Server sürümüne göre biraz değişiklik gösterir. Desteklenen şema koleksiyonlarının listesini belirlemek için, bağımsız değişken olmadan veya "MetaDataCollections" şema koleksiyonu adıyla GetSchema yöntemini çağırın. Bu, desteklenen şema koleksiyonlarının listesini, her birinin desteklediği kısıtlamaların sayısını ve kullandıkları tanımlayıcı parçalarının sayısını içeren bir DataTable döndürür.

Veritabanları

ColumnName DataType Açıklama
Veritabanı_adı String Veritabanının adı.
Dbıd Int16 Veritabanı Kimliği.
create_date DateTime Veritabanının Oluşturma Tarihi.

Yabancı Anahtarlar

ColumnName DataType Açıklama
CONSTRAINT_CATALOG String Kısıtlamanın ait olduğu katalog.
CONSTRAINT_SCHEMA String Kısıtlamayı içeren şema.
CONSTRAINT_NAME String Adı.
TABLE_CATALOG String Tablo Adı kısıtlaması öğesinin bir parçasıdır.
TABLE_SCHEMA String Tabloyu içeren şema.
TABLE_NAME String Tablo Adı
CONSTRAINT_TYPE String Kısıtlama türü. Yalnızca "YABANCı ANAHTAR"a izin verilir.
IS_DEFERRABLE String Kısıtlamanın ertelenebilir olup olmadığını belirtir. HAYIR döndürür.
INITIALLY_DEFERRED String Kısıtlamanın başlangıçta ertelenebilir olup olmadığını belirtir. HAYIR döndürür.

Dizinler

ColumnName DataType Açıklama
constraint_catalog String Dizinin ait olduğu katalog.
constraint_schema String Dizini içeren şema.
constraint_name String Dizinin adı.
Table_catalog String Dizinin ilişkili olduğu tablo adı.
Table_schema String Dizinin ilişkili olduğu tabloyu içeren şema.
Table_name String Tablo Adı.
index_name String Dizin Adı.

Dizinler (SQL Server 2008)

.NET Framework sürüm 3.5 SP1 ve SQL Server 2008 ile başlayarak, yeni uzamsal türleri, dosya akışını ve seyrek sütunları desteklemek için Dizinler şema koleksiyonuna aşağıdaki sütunlar eklenmiştir. Bu sütunlar .NET Framework ve SQL Server'ın önceki sürümlerinde desteklenmez.

ColumnName DataType Açıklama
type_desc String Dizinin türü aşağıdakilerden biri olacaktır:

-YIĞIN
-KÜMELENMİŞ
-KÜMELENMEMİŞ
-XML
-KAYMA

IndexColumns

ColumnName DataType Açıklama
constraint_catalog String Dizinin ait olduğu katalog.
constraint_schema String Dizini içeren şema.
constraint_name String Dizinin adı.
Table_catalog String Dizinin ilişkili olduğu tablo adı.
Table_schema String Dizinin ilişkili olduğu tabloyu içeren şema.
Table_name String Tablo Adı.
Column_name String Dizinin ilişkili olduğu sütun adı.
ordinal_position Int32 Sütun sıralı konumu.
Keytype Bayt Nesnenin türü.
index_name String Dizin Adı.

Yordamlar

ColumnName DataType Açıklama
SPECIFIC_CATALOG String Kataloğun belirli adı.
SPECIFIC_SCHEMA String Şemanın belirli adı.
SPECIFIC_NAME String Kataloğun belirli adı.
ROUTINE_CATALOG String Saklı yordamın ait olduğu katalog.
ROUTINE_SCHEMA String Saklı yordamı içeren şema.
ROUTINE_NAME String Saklı yordamın adı.
ROUTINE_TYPE String Saklı yordamlar için PROCEDURE ve işlevler için İŞLEV'i döndürür.
OLUŞTURULDU DateTime Yordamın oluşturulduğu zaman.
LAST_ALTERED DateTime Yordamın en son değiştirildiği zaman.

Yordam Parametreleri

ColumnName DataType Açıklama
SPECIFIC_CATALOG String Bunun parametre olduğu yordamın katalog adı.
SPECIFIC_SCHEMA String Bu parametrenin parçası olduğu yordamı içeren şema.
SPECIFIC_NAME String Bu parametrenin parçası olduğu yordamın adı.
ORDINAL_POSITION Int32 Parametrenin 1'den başlayarak sıralı konumu. Bir yordamın dönüş değeri için bu 0'dır.
PARAMETER_MODE String Giriş parametresinde IN, çıkış parametresiyse OUT ve giriş/çıkış parametresi ise INOUT döndürür.
IS_RESULT String İşlev olan yordamın sonucunu gösteriyorsa EVET döndürür. Aksi takdirde HAYIR döndürür.
AS_LOCATOR String Bulucu olarak bildirildiyse EVET döndürür. Aksi takdirde HAYIR döndürür.
PARAMETER_NAME String Parametrenin adı. Bu bir işlevin dönüş değerine karşılık geliyorsa NULL.
DATA_TYPE String Sistem tarafından sağlanan veri türü.
CHARACTER_MAXIMUM_LENGTH Int32 İkili veya karakter veri türleri için en fazla karakter uzunluğu. Aksi takdirde NULL döndürür.
CHARACTER_OCTET_LENGTH Int32 İkili veya karakter veri türleri için bayt cinsinden uzunluk üst sınırı. Aksi takdirde NULL döndürür.
COLLATION_CATALOG String Parametresinin harmanlamasının katalog adı. Karakter türlerinden biri değilse NULL döndürür.
COLLATION_SCHEMA String Her zaman NULL döndürür.
COLLATION_NAME String Parametresinin harmanlamasının adı. Karakter türlerinden biri değilse NULL döndürür.
CHARACTER_SET_CATALOG String Parametrenin karakter kümesinin katalog adı. Karakter türlerinden biri değilse NULL döndürür.
CHARACTER_SET_SCHEMA String Her zaman NULL döndürür.
CHARACTER_SET_NAME String Parametrenin karakter kümesinin adı. Karakter türlerinden biri değilse NULL döndürür.
NUMERIC_PRECISION Bayt Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin duyarlığı. Aksi takdirde NULL döndürür.
NUMERIC_PRECISION_RADIX Int16 Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin duyarlık yarıçapı. Aksi takdirde NULL döndürür.
NUMERIC_SCALE Int32 Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin ölçeği. Aksi takdirde NULL döndürür.
DATETIME_PRECISION Int16 Parametre türü datetime veya smalldatetime ise kesirli saniye olarak duyarlık. Aksi takdirde NULL döndürür.
INTERVAL_TYPE String NULL. SQL Server tarafından gelecekte kullanılmak üzere ayrılmıştır.
INTERVAL_PRECISION Int16 NULL. SQL Server tarafından gelecekte kullanılmak üzere ayrılmıştır.

Tablolar

ColumnName DataType Açıklama
TABLE_CATALOG String Tablonun kataloğu.
TABLE_SCHEMA String Tabloyu içeren şema.
TABLE_NAME String Tablo adı.
TABLE_TYPE String Tablo türü. GÖRÜNÜM veya TEMEL TABLO olabilir.

Sütunlar

ColumnName DataType Açıklama
TABLE_CATALOG String Tablonun kataloğu.
TABLE_SCHEMA String Tabloyu içeren şema.
TABLE_NAME String Tablo adı.
COLUMN_NAME String Sütun adı.
ORDINAL_POSITION Int32 Sütun tanımlama numarası.
COLUMN_DEFAULT String Sütunun varsayılan değeri
IS_NULLABLE String Sütunun null atanabilirliği. Bu sütun NULL'a izin veriyorsa, bu sütun EVET döndürür. Aksi takdirde Hayır döndürülür.
DATA_TYPE String Sistem tarafından sağlanan veri türü.
CHARACTER_MAXIMUM_LENGTH Int32 – Sql8, Int16 – Sql7 İkili veriler, karakter verileri veya metin ve görüntü verileri için karakter cinsinden uzunluk üst sınırı. Aksi takdirde NULL döndürülür.
CHARACTER_OCTET_LENGTH Int32 – SQL8, Int16 – Sql7 İkili veriler, karakter verileri veya metin ve görüntü verileri için bayt cinsinden uzunluk üst sınırı. Aksi takdirde NULL döndürülür.
NUMERIC_PRECISION İmzasız Bayt Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin duyarlığı. Aksi takdirde NULL döndürülür.
NUMERIC_PRECISION_RADIX Int16 Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin duyarlık yarıçapı. Aksi takdirde NULL döndürülür.
NUMERIC_SCALE Int32 Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin ölçeği. Aksi takdirde NULL döndürülür.
DATETIME_PRECISION Int16 datetime ve SQL-92 aralık veri türleri için alt tür kodu. Diğer veri türleri için NULL döndürülür.
CHARACTER_SET_CATALOG String Sütun karakter verileri veya metin veri türüyse, karakter kümesinin bulunduğu veritabanını gösteren ana değeri döndürür. Aksi takdirde NULL döndürülür.
CHARACTER_SET_SCHEMA String Her zaman NULL döndürür.
CHARACTER_SET_NAME String Bu sütun karakter verileri veya metin veri türüyse, karakter kümesinin benzersiz adını döndürür. Aksi takdirde NULL döndürülür.
COLLATION_CATALOG String Sütun karakter verileri veya metin veri türüyse, harmanlamanın tanımlandığı veritabanını gösteren ana değeri döndürür. Aksi takdirde, bu sütun NULL'tır.

Sütunlar (SQL Server 2008)

.NET Framework sürüm 3.5 SP1 ve SQL Server 2008'le başlayarak, yeni uzamsal türleri, dosya akışını ve seyrek sütunları desteklemek için Sütunlar şema koleksiyonuna aşağıdaki sütunlar eklenmiştir. Bu sütunlar .NET Framework ve SQL Server'ın önceki sürümlerinde desteklenmez.

ColumnName DataType Açıklama
IS_FILESTREAM String SÜTUNDA FILESTREAM özniteliği varsa EVET.

Sütunda FILESTREAM özniteliği yoksa HAYIR.
IS_SPARSE String Sütun seyrek bir sütunsa EVET.

Sütun seyrek bir sütun değilse HAYIR.
IS_COLUMN_SET String Sütun bir sütun kümesi sütunuysa EVET.

Sütun bir sütun kümesi sütunu değilse HAYIR.

AllColumns (SQL Server 2008)

.NET Framework sürüm 3.5 SP1 ve SQL Server 2008 ile başlayarak, seyrek sütunları desteklemek için AllColumns şema koleksiyonu eklenmiştir. AllColumns, .NET Framework ve SQL Server'ın önceki sürümlerinde desteklenmez.

AllColumns, Columns şema koleksiyonuyla aynı kısıtlamalara ve sonuçta elde edilen DataTable şemasına sahiptir. Tek fark, AllColumns'un Sütunlar şema koleksiyonuna dahil olmayan sütun kümesi sütunları içermesidir. Aşağıdaki tabloda bu sütunlar açıklanmaktadır.

ColumnName DataType Açıklama
TABLE_CATALOG String Tablonun kataloğu.
TABLE_SCHEMA String Tabloyu içeren şema.
TABLE_NAME String Tablo adı.
COLUMN_NAME String Sütun adı.
ORDINAL_POSITION Int32 Sütun tanımlama numarası.
COLUMN_DEFAULT String Sütunun varsayılan değeri
IS_NULLABLE String Sütunun null atanabilirliği. Bu sütun NULL'a izin veriyorsa, bu sütun EVET döndürür. Aksi takdirde HAYIR döndürülür.
DATA_TYPE String Sistem tarafından sağlanan veri türü.
CHARACTER_MAXIMUM_LENGTH Int32 İkili veriler, karakter verileri veya metin ve görüntü verileri için karakter cinsinden uzunluk üst sınırı. Aksi takdirde NULL döndürülür.
CHARACTER_OCTET_LENGTH Int32 İkili veriler, karakter verileri veya metin ve görüntü verileri için bayt cinsinden uzunluk üst sınırı. Aksi takdirde NULL döndürülür.
NUMERIC_PRECISION İmzasız Bayt Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin duyarlığı. Aksi takdirde NULL döndürülür.
NUMERIC_PRECISION_RADIX Int16 Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin duyarlık yarıçapı. Aksi takdirde NULL döndürülür.
NUMERIC_SCALE Int32 Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin ölçeği. Aksi takdirde NULL döndürülür.
DATETIME_PRECISION Int16 datetime ve SQL-92 aralık veri türleri için alt tür kodu. Diğer veri türleri için NULL döndürülür.
CHARACTER_SET_CATALOG String Sütun karakter verileri veya metin veri türüyse, karakter kümesinin bulunduğu veritabanını gösteren ana değeri döndürür. Aksi takdirde NULL döndürülür.
CHARACTER_SET_SCHEMA String Her zaman NULL döndürür.
CHARACTER_SET_NAME String Bu sütun karakter verileri veya metin veri türüyse, karakter kümesinin benzersiz adını döndürür. Aksi takdirde NULL döndürülür.
COLLATION_CATALOG String Sütun karakter verileri veya metin veri türüyse, harmanlamanın tanımlandığı veritabanını gösteren ana değeri döndürür. Aksi takdirde, bu sütun NULL'tır.
IS_FILESTREAM String SÜTUNDA FILESTREAM özniteliği varsa EVET.

Sütunda FILESTREAM özniteliği yoksa HAYIR.
IS_SPARSE String Sütun seyrek bir sütunsa EVET.

Sütun seyrek bir sütun değilse HAYIR.
IS_COLUMN_SET String Sütun bir sütun kümesi sütunuysa EVET.

Sütun bir sütun kümesi sütunu değilse HAYIR.

ColumnSetColumns (SQL Server 2008)

.NET Framework sürüm 3.5 SP1 ve SQL Server 2008'le başlayarak, seyrek sütunları desteklemek için ColumnSetColumns şema koleksiyonu eklenmiştir. ColumnSetColumns, .NET Framework ve SQL Server'ın önceki sürümlerinde desteklenmez. ColumnSetColumns şema koleksiyonu, bir sütun kümesindeki tüm sütunların şemasını döndürür. Aşağıdaki tabloda bu sütunlar açıklanmaktadır.

ColumnName DataType Açıklama
TABLE_CATALOG String Tablonun kataloğu.
TABLE_SCHEMA String Tabloyu içeren şema.
TABLE_NAME String Tablo adı.
COLUMN_NAME String Sütun adı.
ORDINAL_POSITION Int32 Sütun tanımlama numarası.
COLUMN_DEFAULT String Sütunun varsayılan değeri
IS_NULLABLE String Sütunun null atanabilirliği. Bu sütun NULL'a izin veriyorsa, bu sütun EVET döndürür. Aksi takdirde HAYIR döndürülür.
DATA_TYPE String Sistem tarafından sağlanan veri türü.
CHARACTER_MAXIMUM_LENGTH Int32 İkili veriler, karakter verileri veya metin ve görüntü verileri için karakter cinsinden uzunluk üst sınırı. Aksi takdirde NULL döndürülür.
CHARACTER_OCTET_LENGTH Int32 İkili veriler, karakter verileri veya metin ve görüntü verileri için bayt cinsinden uzunluk üst sınırı. Aksi takdirde NULL döndürülür.
NUMERIC_PRECISION İmzasız Bayt Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin duyarlığı. Aksi takdirde NULL döndürülür.
NUMERIC_PRECISION_RADIX Int16 Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin duyarlık yarıçapı. Aksi takdirde NULL döndürülür.
NUMERIC_SCALE Int32 Yaklaşık sayısal verilerin, tam sayısal verilerin, tamsayı verilerinin veya parasal verilerin ölçeği. Aksi takdirde NULL döndürülür.
DATETIME_PRECISION Int16 datetime ve SQL-92 aralık veri türleri için alt tür kodu. Diğer veri türleri için NULL döndürülür.
CHARACTER_SET_CATALOG String Sütun karakter verileri veya metin veri türüyse, karakter kümesinin bulunduğu veritabanını gösteren ana değeri döndürür. Aksi takdirde NULL döndürülür.
CHARACTER_SET_SCHEMA String Her zaman NULL döndürür.
CHARACTER_SET_NAME String Bu sütun karakter verileri veya metin veri türüyse, karakter kümesinin benzersiz adını döndürür. Aksi takdirde NULL döndürülür.
COLLATION_CATALOG String Sütun karakter verileri veya metin veri türüyse, harmanlamanın tanımlandığı veritabanını gösteren ana değeri döndürür. Aksi takdirde, bu sütun NULL'tır.
IS_FILESTREAM String SÜTUNDA FILESTREAM özniteliği varsa EVET.

Sütunda FILESTREAM özniteliği yoksa HAYIR.
IS_SPARSE String Sütun seyrek bir sütunsa EVET.

Sütun seyrek bir sütun değilse HAYIR.
IS_COLUMN_SET String Sütun bir sütun kümesi sütunuysa EVET.

Sütun bir sütun kümesi sütunu değilse HAYIR.

Kullanıcılar

ColumnName DataType Açıklama
Uıd Int16 Bu veritabanında benzersiz olan kullanıcı kimliği. 1, veritabanı sahibidir.
Kullanıcı_adı String Bu veritabanında benzersiz olan kullanıcı adı veya grup adı.
oluşturma DateTime Hesabın eklendiği tarih.
güncelleştirildi DateTime Hesabın son değiştirildiği tarih.

Görünümler

ColumnName DataType Açıklama
TABLE_CATALOG String Görünümün kataloğu.
TABLE_SCHEMA String Görünümü içeren şema.
TABLE_NAME String Görünüm adı.
CHECK_OPTION String WITH CHECK OPTION türü. Özgün görünüm, CHECK OPTION ile oluşturulduysa CASCADE olur. Aksi takdirde NONE döndürülür.
IS_UPDATABLE String Görünümün güncelleştirilebilir olup olmadığını belirtir. Her zaman HAYIR döndürür.

ViewColumns

ColumnName DataType Açıklama
VIEW_CATALOG String Görünümün kataloğu.
VIEW_SCHEMA String Görünümü içeren şema.
VIEW_NAME String Görünüm adı.
TABLE_CATALOG String Bu görünümle ilişkili tablonun kataloğu.
TABLE_SCHEMA String Bu görünümle ilişkili tabloyu içeren şema.
TABLE_NAME String Görünümle ilişkili tablonun adı. Temel Tablo.
COLUMN_NAME String Sütun adı.

UserDefinedTypes

ColumnName DataType Açıklama
Assembly_name String Derleme için dosyanın adı.
udt_name String Derlemenin sınıf adı.
version_major Object Ana Sürüm Numarası.
version_minor Object İkincil Sürüm Numarası.
version_build Object Derleme Numarası.
version_revision Object Düzeltme Numarası.
culture_info Object Bu UDT ile ilişkili kültür bilgileri.
public_key Object Bu Derleme tarafından kullanılan ortak anahtar.
is_fixed_length Boolean Tür uzunluğunun her zaman max_length ile aynı olup olmadığını belirtir.
max_length Int16 Bayt cinsinden en fazla tür uzunluğu.
Create_Date DateTime Derlemenin oluşturulduğu/kaydedilildiği tarih.
Permission_set_desc String Derleme için izin kümesi/güvenlik düzeyi için kolay ad.

Ayrıca bkz.