Коллекции схем SQL Server (ADO.NET)
Поставщик данных Microsoft .NET Framework для SQL Server поддерживает дополнительные коллекции схем помимо общих коллекций. Коллекции схем незначительно меняются в зависимости от используемой версии SQL Server. Чтобы получить список поддерживаемых коллекций схем, вызовите метод GetSchema без аргументов или укажите имя коллекции схем «MetaDataCollections». При этом будет возвращена DataTable со списком поддерживаемых коллекций схем, числом ограничений, которые каждая из них поддерживает, и числом идентификационных частей, которые в них используются.
Databases
ColumnName |
DataType |
Описание |
---|---|---|
database_name |
String |
Имя базы данных. |
Dbid |
Int16 |
Идентификатор базы данных. |
create_date |
DateTime |
Дата создания базы данных. |
Foreign Keys
ColumnName |
DataType |
Описание |
---|---|---|
constraint_catalog |
String |
Каталог, которому принадлежит ограничение. |
constraint_schema |
String |
Схема, которая содержит ограничение. |
constraint_name |
String |
Имя. |
table_catalog |
String |
Имя таблицы, частью которой является ограничение. |
table_schema |
String |
Схема, которая содержит таблицу. |
table_name |
String |
Имя таблицы. |
constraint_type |
String |
Тип ограничения. Допускается только ограничение «FOREIGN KEY». |
is_deferrable |
String |
Указывает, является ли ограничение допускающим задержку. Возвращает NO. |
initially_deferred |
String |
Указывает, является ли ограничение первоначально допускающим задержку. Возвращает NO. |
Indexes
ColumnName |
DataType |
Описание |
---|---|---|
constraint_catalog |
String |
Каталог, которому принадлежит индекс. |
constraint_schema |
String |
Схема, которая содержит индекс. |
constraint_name |
String |
Имя индекса. |
table_catalog |
String |
Имя таблицы, с которой связан индекс. |
table_schema |
String |
Схема, содержащая таблицу, с которой связан индекс. |
table_name |
String |
Имя таблицы. |
Indexes (SQL Server 2008)
Начиная с .NET Framework 3.5 с пакетом обновления 1 (SP1) и SQL Server 2008 в коллекцию схем Indexes для поддержки новых пространственных типов, файловых потоков и разреженных столбцов были добавлены указанные ниже столбцы. Эти столбцы не поддерживаются в предыдущих версиях .NET Framework и SQL Server.
ColumnName |
DataType |
Описание |
---|---|---|
type_desc |
String |
Индекс имеет один из указанных ниже типов.
|
IndexColumns
ColumnName |
DataType |
Описание |
---|---|---|
constraint_catalog |
String |
Каталог, которому принадлежит индекс. |
constraint_schema |
String |
Схема, которая содержит индекс. |
constraint_name |
String |
Имя индекса. |
table_catalog |
String |
Имя таблицы, с которой связан индекс. |
table_schema |
String |
Схема, содержащая таблицу, с которой связан индекс. |
table_name |
String |
Имя таблицы. |
column_name |
String |
Имя столбца, с которым связан индекс. |
ordinal_position |
Int32 |
Порядковая позиция столбца. |
KeyType |
UInt16 |
Тип объекта. |
Procedures
Эта коллекция доступна только в версии SQL Server 2000 и более поздних.
ColumnName |
DataType |
Описание |
---|---|---|
specific_catalog |
String |
Собственное имя для каталога. |
specific_schema |
String |
Определенное имя схемы. |
specific_name |
String |
Определенное имя каталога. |
routine_catalog |
String |
Каталог, которому принадлежит хранимая процедура. |
routine_schema |
String |
Схема, которая содержит хранимую процедуру. |
routine_name |
String |
Имя хранимой процедуры. |
routine_type |
String |
Возвращает значение PROCEDURE для хранимых процедур и FUNCTION для функций. |
created |
DateTime |
Время создания процедуры. |
last_altered |
DateTime |
Время последнего изменения процедуры. |
ProcedureParameters
ColumnName |
DataType |
Описание |
---|---|---|
specific_catalog |
String |
Имя каталога процедуры, для которой это является параметром. |
specific_schema |
String |
Схема, содержащая процедуру, частью которой является этот параметр. |
specific_name |
String |
Имя процедуры, частью которой является этот параметр. |
ordinal_position |
Int16 |
Порядковый номер параметра, начиная с 1. Для возвращаемого значения процедуры — 0. |
parameter_mode |
String |
Возвращает значение IN для входного параметра, OUT для выходного параметра и INOUT для изменяемого входного параметра. |
is_result |
String |
Возвращает значение YES, если результат процедуры является результатом выполнения функции. В противном случае возвращается значение NO. |
as_locator |
String |
Возвращает значение YES, если результат объявлен как указатель. В противном случае возвращается значение NO. |
parameter_name |
String |
Имя параметра. Если соответствует результату выполнения функции, то возвращается значение NULL. |
data_type |
String |
Тип данных, поддерживаемый системой. |
character_maximum_length |
Int32 |
Максимальная длина в символах для двоичных или символьных данных. В противном случае возвращает NULL. |
character_octet_length |
Int32 |
Максимальная длина в байтах для двоичных или символьных данных. В противном случае возвращает NULL. |
collation_catalog |
String |
Имя каталога параметров сортировки параметра. Если входные данные не принадлежат ни к одному из символьных типов, возвращает значение NULL. |
collation_schema |
String |
Всегда возвращает значение NULL. |
collation_name |
String |
Имя параметров сортировки параметра. Если входные данные не принадлежат ни к одному из символьных типов, возвращает значение NULL. |
character_set_catalog |
String |
Имя каталога кодировки параметра. Если входные данные не принадлежат ни к одному из символьных типов, возвращает значение NULL. |
character_set_schema |
String |
Всегда возвращает значение NULL. |
character_set_name |
String |
Имя кодировки параметра. Если входные данные не принадлежат ни к одному из символьных типов, возвращает значение NULL. |
numeric_precision |
Byte |
Точность приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращает NULL. |
numeric_precision_radix |
Int16 |
Основание системы счисления точности приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращает NULL. |
numeric_scale |
Int32 |
Масштаб приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращает NULL. |
datetime_precision |
Int16 |
Точность в долях секунды, если параметр имеет тип datetime или smalldatetime. В противном случае возвращает NULL. |
interval_type |
String |
NULL. Зарезервировано для будущего использования в SQL Server. |
interval_precision |
Int16 |
NULL. Зарезервировано для будущего использования в SQL Server. |
Tables
ColumnName |
DataType |
Описание |
---|---|---|
table_catalog |
String |
Каталог таблицы. |
table_schema |
String |
Схема, которая содержит таблицу. |
table_name |
String |
Имя таблицы. |
table_type |
String |
Тип таблицы. Может быть VIEW или BASE TABLE. |
Columns
ColumnName |
DataType |
Описание |
---|---|---|
table_catalog |
String |
Каталог таблицы. |
table_schema |
String |
Схема, которая содержит таблицу. |
table_name |
String |
Имя таблицы. |
column_name |
String |
Имя столбца. |
ordinal_position |
Int16 |
Идентификационный номер столбца. |
column_default |
String |
Значение столбца по умолчанию. |
is_nullable |
String |
Указывает, может ли столбец содержать значение NULL. Если для столбца допустимо значение NULL, этот столбец возвращает значение YES. Иначе возвращается значение NO. |
data_type |
String |
Тип данных, поддерживаемый системой. |
character_maximum_length |
Int32 – Sql8, Int16 – Sql7 |
Максимальная длина в символах для двоичных данных, символьных данных или текстовых данных и изображений. В противном случае возвращается значение NULL. |
character_octet_length |
Int32 – SQL8, Int16 – Sql7 |
Максимальная длина в байтах для двоичных данных, символьных данных или текстовых данных и изображений. В противном случае возвращается значение NULL. |
numeric_precision |
Unsigned Byte |
Точность приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
numeric_precision_radix |
Int16 |
Основание системы счисления точности приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
numeric_scale |
Int32 |
Масштаб приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
datetime_precision |
Int16 |
Код подтипа для типа данных datetime и типа данных interval языка SQL-92. Для других типов данных возвращается значение NULL. |
character_set_catalog |
String |
Возвращает значение «master», т. е. имя базы данных, в которой находится кодировка, если столбец имеет символьный тип данных или текстовый тип данных. В противном случае возвращается значение NULL. |
character_set_schema |
String |
Всегда возвращает значение NULL. |
character_set_name |
String |
Возвращает уникальное имя для кодировки, если столбец содержит символьные данные или текстовые данные. В противном случае возвращается значение NULL. |
collation_catalog |
String |
Возвращает значение «master», т. е. имя базы данных, в которой определен параметр сортировки, если столбец имеет символьный тип данных или текстовый тип данных. В противном случае этот столбец содержит значение NULL. |
Columns (SQL Server 2008)
Начиная с .NET Framework 3.5 с пакетом обновления 1 (SP1) и SQL Server 2008, в коллекцию схем Columns для поддержки новых пространственных типов, файловых потоков и разреженных столбцов были добавлены указанные ниже столбцы. Эти столбцы не поддерживаются в предыдущих версиях .NET Framework и SQL Server.
ColumnName |
DataType |
Описание |
---|---|---|
IS_FILESTREAM |
String |
YES, если для столбца установлен атрибут FILESTREAM. NO, если для столбца не установлен атрибут FILESTREAM. |
IS_SPARSE |
String |
YES, если столбец является разреженным. NO, если столбец не является разреженным. |
IS_COLUMN_SET |
String |
YES, если столбец является набором столбцов. NO, если столбец не является набором столбцов. |
AllColumns (SQL Server 2008)
Начиная с .NET Framework 3.5 с пакетом обновления 1 (SP1) и SQL Server 2008, для поддержки разреженных столбцов была добавлена коллекция схем AllColumns. Коллекция схем AllColumns не поддерживается в предыдущих версиях .NET Framework и SQL Server.
Для коллекции схем AllColumns установлены те же ограничения и результирующая схема DataTable, что и для коллекции схем Columns. Единственное отличие заключается в том, что коллекция схем AllColumns включает столбцы, представляющие наборы столбцов, которые не входят в коллекцию схем Columns. Эти столбцы описаны в приведенной ниже таблице.
ColumnName |
DataType |
Описание |
---|---|---|
table_catalog |
String |
Каталог таблицы. |
table_schema |
String |
Схема, которая содержит таблицу. |
table_name |
String |
Имя таблицы. |
column_name |
String |
Имя столбца. |
ordinal_position |
Int16 |
Идентификационный номер столбца. |
column_default |
String |
Значение столбца по умолчанию. |
is_nullable |
String |
Указывает, может ли столбец содержать значение NULL. Если для столбца допустимо значение NULL, этот столбец возвращает значение YES. В противном случае возвращается значение NO. |
data_type |
String |
Тип данных, поддерживаемый системой. |
character_maximum_length |
Int32 для SQL Server 2000 и более поздних версий, Int16 для SQL Server 7.0 |
Максимальная длина в символах для двоичных данных, символьных данных или текстовых данных и изображений. В противном случае возвращается значение NULL. |
character_octet_length |
Int32 для SQL Server 2000 и более поздних версий, Int16 для SQL Server 7.0 |
Максимальная длина в байтах для двоичных данных, символьных данных или текстовых данных и изображений. В противном случае возвращается значение NULL. |
numeric_precision |
Unsigned Byte |
Точность приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
numeric_precision_radix |
Int16 |
Основание системы счисления точности приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
numeric_scale |
Int32 |
Масштаб приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
datetime_precision |
Int16 |
Код подтипа для типа данных datetime и типа данных interval языка SQL-92. Для других типов данных возвращается значение NULL. |
character_set_catalog |
String |
Возвращает значение «master», т. е. имя базы данных, в которой находится кодировка, если столбец имеет символьный тип данных или текстовый тип данных. В противном случае возвращается значение NULL. |
character_set_schema |
String |
Всегда возвращает значение NULL. |
character_set_name |
String |
Возвращает уникальное имя для кодировки, если столбец содержит символьные данные или текстовые данные. В противном случае возвращается значение NULL. |
collation_catalog |
String |
Возвращает значение «master», т. е. имя базы данных, в которой определен параметр сортировки, если столбец имеет символьный тип данных или текстовый тип данных. В противном случае этот столбец содержит значение NULL. |
IS_FILESTREAM |
String |
YES, если для столбца установлен атрибут FILESTREAM. NO, если для столбца не установлен атрибут FILESTREAM. |
IS_SPARSE |
String |
YES, если столбец является разреженным. NO, если столбец не является разреженным. |
IS_COLUMN_SET |
String |
YES, если столбец является набором столбцов. NO, если столбец не является набором столбцов. |
ColumnSetColumns (SQL Server 2008)
Начиная с .NET Framework 3.5 с пакетом обновления 1 (SP1) и SQL Server 2008, для поддержки разреженных столбцов была добавлена коллекция схем ColumnSetColumns. Коллекция схем ColumnSetColumns не поддерживается в предыдущих версиях .NET Framework и SQL Server. Коллекция схем ColumnSetColumns возвращает схему для всех столбцов в наборе столбцов. Эти столбцы описаны в приведенной ниже таблице.
ColumnName |
DataType |
Описание |
---|---|---|
table_catalog |
String |
Каталог таблицы. |
table_schema |
String |
Схема, которая содержит таблицу. |
table_name |
String |
Имя таблицы. |
column_name |
String |
Имя столбца. |
ordinal_position |
Int16 |
Идентификационный номер столбца. |
column_default |
String |
Значение столбца по умолчанию. |
is_nullable |
String |
Указывает, может ли столбец содержать значение NULL. Если для столбца допустимо значение NULL, этот столбец возвращает значение YES. В противном случае возвращается значение NO. |
data_type |
String |
Тип данных, поддерживаемый системой. |
character_maximum_length |
Int32 для SQL Server 2000 и более поздних версий, Int16 для SQL Server 7.0 |
Максимальная длина в символах для двоичных данных, символьных данных или текстовых данных и изображений. В противном случае возвращается значение NULL. |
character_octet_length |
Int32 для SQL Server 2000 и более поздних версий, Int16 для SQL Server 7.0 |
Максимальная длина в байтах для двоичных данных, символьных данных или текстовых данных и изображений. В противном случае возвращается значение NULL. |
numeric_precision |
Unsigned Byte |
Точность приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
numeric_precision_radix |
Int16 |
Основание системы счисления точности приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
numeric_scale |
Int32 |
Масштаб приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
datetime_precision |
Int16 |
Код подтипа для типа данных datetime и типа данных interval языка SQL-92. Для других типов данных возвращается значение NULL. |
character_set_catalog |
String |
Возвращает значение «master», т. е. имя базы данных, в которой находится кодировка, если столбец имеет символьный тип данных или текстовый тип данных. В противном случае возвращается значение NULL. |
character_set_schema |
String |
Всегда возвращает значение NULL. |
character_set_name |
String |
Возвращает уникальное имя для кодировки, если столбец содержит символьные данные или текстовые данные. В противном случае возвращается значение NULL. |
collation_catalog |
String |
Возвращает значение «master», т. е. имя базы данных, в которой определен параметр сортировки, если столбец имеет символьный тип данных или текстовый тип данных. В противном случае этот столбец содержит значение NULL. |
IS_FILESTREAM |
String |
YES, если для столбца установлен атрибут FILESTREAM. NO, если для столбца не установлен атрибут FILESTREAM. |
IS_SPARSE |
String |
YES, если столбец является разреженным. NO, если столбец не является разреженным. |
IS_COLUMN_SET |
String |
YES, если столбец является набором столбцов. NO, если столбец не является набором столбцов. |
Users
ColumnName |
DataType |
Описание |
---|---|---|
uid |
Int16 |
Идентификатор пользователя, уникальный в этой базе данных. 1 — это владелец базы данных. |
name |
String |
Имя пользователя или имя группы, уникальные в этой базе данных. |
createdate |
DateTime |
Дата добавления этой учетной записи. |
updatedate |
DateTime |
Дата последнего изменения учетной записи. |
Views
Эта коллекция доступна только в версии SQL Server 2000 и более поздних.
ColumnName |
DataType |
Описание |
---|---|---|
table_catalog |
String |
Каталог представления. |
table_schema |
String |
Схема, которая содержит представление. |
table_name |
String |
Имя представления. |
check_option |
String |
Тип инструкции WITH CHECK OPTION. CASCADE, если первоначальное представление было создано с помощью инструкции WITH CHECK OPTION. Иначе возвращается значение NONE. |
is_updatable |
String |
Указывает, можно ли обновлять это представление. Всегда возвращает NO. |
ViewColumns
ColumnName |
DataType |
Описание |
---|---|---|
view_catalog |
String |
Каталог представления. |
view_schema |
String |
Схема, которая содержит представление. |
view_name |
String |
Имя представления. |
table_catalog |
String |
Каталог таблицы, которая связана с этим представлением. |
table_schema |
String |
Schema, который содержит таблицу, связанную с этим представлением. |
table_name |
String |
Имя таблицы, которая связана с представлением. Базовая таблица. |
column_name |
String |
Имя столбца. |
UserDefinedTypes
Эта коллекция доступна только в версии SQL Server 2005 и выше.
ColumnName |
DataType |
Описание |
---|---|---|
assembly_name |
String |
Имя файла для сборки. |
UDT_name |
String |
Имя класса для сборки. |
version_major |
Object |
Основной номер версии. |
version_minor |
Object |
Дополнительный номер версии. |
version_build |
Object |
Номер сборки. |
version_revision |
Object |
Номер редакции. |
Culture_info |
Object |
Сведения о языке и региональных параметрах, которые связаны с этим определяемым пользователем типом. |
Public_key |
Object |
Открытый ключ, используемый в этой сборке. |
Is_fixed_length |
Boolean |
Указывает, является ли длина данных этого типа всегда равной значению max_length. |
max_length |
Int16 |
Максимальная длина значения типа в байтах. |
permission_set_desc |
String |
Удобное в использовании имя набора разрешений и (или) уровня безопасности для сборки. |
create_date |
DateTime |
Дата создания или регистрации сборки. |