Коллекции схем SQL Server
Область применения: платформа .NET Framework .NET Standard
Поставщик данных Microsoft SqlClient для SQL Server поддерживает следующие дополнительные коллекции схем помимо общих коллекций. Коллекции схем незначительно меняются в зависимости от используемой версии SQL Server. Чтобы получить список поддерживаемых коллекций схем, вызовите метод GetSchema без аргументов или укажите имя коллекции схем "MetaDataCollections". При этом будет возвращена DataTable со списком поддерживаемых коллекций схем, число ограничений, которые каждая из них поддерживает, и число идентификационных частей, которые в них используются.
Базы данных
ColumnName | Тип данных | Description |
---|---|---|
database_name | Строка | Имя базы данных . |
dbid | Int16 | Идентификатор базы данных. |
create_date | Дата/время | Дата создания базы данных. |
Внешние ключи
ColumnName | Тип данных | Description |
---|---|---|
CONSTRAINT_CATALOG | Строка | Каталог, к которому принадлежит ограничение. |
CONSTRAINT_SCHEMA | Строка | Схема, которая содержит ограничение. |
CONSTRAINT_NAME | Строка | Имя. |
TABLE_CATALOG | Строка | Имя таблицы, частью которой является ограничение. |
TABLE_SCHEMA | Строка | Схема, которая содержит таблицу. |
TABLE_NAME | Строка | Имя таблицы |
CONSTRAINT_TYPE | Строка | Тип ограничения. Допускается только ограничение «FOREIGN KEY». |
IS_DEFERRABLE | Строка | Указывает, является ли ограничение допускающим задержку. Возвращает NO. |
INITIALLY_DEFERRED | Строка | Указывает, является ли ограничение первоначально допускающим задержку. Возвращает NO. |
Индексы
ColumnName | Тип данных | Description |
---|---|---|
constraint_catalog | Строка | Каталог, которому принадлежит индекс. |
constraint_schema | Строка | Схема, которая содержит индекс. |
constraint_name | Строка | Имя индекса. |
table_catalog | Строка | Имя таблицы, с которой связан индекс. |
table_schema | Строка | Схема, содержащая таблицу, с которой связан индекс. |
table_name | Строка | Имя таблицы. |
index_name | Строка | Имя индекса. |
type_desc | Строка | Индекс имеет один из указанных ниже типов. - HEAP - CLUSTERED - NONCLUSTERED - XML - SPATIAL |
IndexColumns
ColumnName | Тип данных | Description |
---|---|---|
constraint_catalog | Строка | Каталог, которому принадлежит индекс. |
constraint_schema | Строка | Схема, которая содержит индекс. |
constraint_name | Строка | Имя индекса. |
table_catalog | Строка | Имя таблицы, с которой связан индекс. |
table_schema | Строка | Схема, содержащая таблицу, с которой связан индекс. |
table_name | Строка | Имя таблицы. |
column_name | Строка | Имя таблицы, с которой связан индекс. |
ordinal_position | Int32 | Порядковая позиция столбца. |
KeyType | Байт | Тип объекта. |
index_name | Строка | Имя индекса. |
Процедуры
ColumnName | Тип данных | Description |
---|---|---|
SPECIFIC_CATALOG | Строка | Собственное имя для каталога. |
SPECIFIC_SCHEMA | Строка | Определенное имя схемы. |
SPECIFIC_NAME | Строка | Определенное имя каталога. |
ROUTINE_CATALOG | Строка | Каталог, которому принадлежит хранимая процедура. |
ROUTINE_SCHEMA | Строка | Схема, которая содержит хранимую процедуру. |
ROUTINE_NAME | Строка | Имя хранимой процедуры. |
ROUTINE_TYPE | Строка | Возвращает значение PROCEDURE для хранимых процедур и FUNCTION для функций. |
СОЗДАНО | Дата/время | Время создания процедуры. |
LAST_ALTERED | Дата/время | Время последнего изменения процедуры. |
Параметры процедуры
ColumnName | Тип данных | Description |
---|---|---|
SPECIFIC_CATALOG | Строка | Имя каталога процедуры, для которой это является параметром. |
SPECIFIC_SCHEMA | Строка | Схема, содержащая процедуру, частью которой является этот параметр. |
SPECIFIC_NAME | Строка | Имя процедуры, частью которой является этот параметр. |
ORDINAL_POSITION | Int32 | Порядковый номер параметра, начиная с 1. Для возвращаемого значения процедуры - 0. |
PARAMETER_MODE | Строка | Возвращает значение IN для входного параметра, OUT для выходного параметра и INOUT для изменяемого входного параметра. |
IS_RESULT | Строка | Возвращает значение YES, если результат процедуры является результатом выполнения функции. В противном случае возвращается значение NO. |
AS_LOCATOR | Строка | Возвращает значение YES, если результат объявлен как указатель. В противном случае возвращается значение NO. |
PARAMETER_NAME | Строка | Имя параметра. Если соответствует результату выполнения функции, то возвращается значение NULL. |
DATA_TYPE | Строка | Тип данных, поддерживаемый системой. |
CHARACTER_MAXIMUM_LENGTH | Int32 | Максимальная длина в символах для двоичных или символьных данных. В противном случае возвращается значение NULL. |
CHARACTER_OCTET_LENGTH | Int32 | Максимальная длина в байтах для двоичных или символьных данных. В противном случае возвращается значение NULL. |
COLLATION_CATALOG | Строка | Имя каталога параметров сортировки параметра. Если введенные данные не принадлежат ни к одному из символьных типов, возвращает значение NULL. |
COLLATION_SCHEMA | Строка | Всегда возвращает значение NULL. |
COLLATION_NAME | Строка | Имя параметров сортировки параметра. Если введенные данные не принадлежат ни к одному из символьных типов, возвращает значение NULL. |
CHARACTER_SET_CATALOG | Строка | Имя каталога кодировки параметра. Если введенные данные не принадлежат ни к одному из символьных типов, возвращает значение NULL. |
CHARACTER_SET_SCHEMA | Строка | Всегда возвращает значение NULL. |
CHARACTER_SET_NAME | Строка | Имя кодировки параметра. Если введенные данные не принадлежат ни к одному из символьных типов, возвращает значение NULL. |
NUMERIC_PRECISION | Байт | Точность приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
NUMERIC_PRECISION_RADIX | Int16 | Основание системы счисления точности приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
NUMERIC_SCALE | Int32 | Масштаб приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. В противном случае возвращается значение NULL. |
DATETIME_PRECISION | Int16 | Точность в долях секунды, если параметр имеет тип datetime или smalldatetime. В противном случае возвращается значение NULL. |
INTERVAL_TYPE | Строка | NULL. Зарезервировано для будущего использования в SQL Server. |
INTERVAL_PRECISION | Int16 | NULL. Зарезервировано для будущего использования в SQL Server. |
Таблицы
ColumnName | Тип данных | Description |
---|---|---|
TABLE_CATALOG | Строка | Каталог таблицы. |
TABLE_SCHEMA | Строка | Схема, которая содержит таблицу. |
TABLE_NAME | Строка | Имя таблицы. |
TABLE_TYPE | Строка | Тип таблицы. Может быть VIEW или BASE TABLE. |
Столбцы
ColumnName | Тип данных | Description |
---|---|---|
TABLE_CATALOG | Строка | Каталог таблицы. |
TABLE_SCHEMA | Строка | Схема, которая содержит таблицу. |
TABLE_NAME | Строка | Имя таблицы. |
COLUMN_NAME | Строка | Имя столбца. |
ORDINAL_POSITION | Int32 | Идентификационный номер столбца. |
COLUMN_DEFAULT | Строка | Значение столбца по умолчанию. |
IS_NULLABLE | Строка | Указывает, может ли столбец допускать значение NULL. Если для столбца допустимо значение NULL, этот столбец возвращает значение YES. Иначе возвращается значение NO. |
DATA_TYPE | Строка | Тип данных, поддерживаемый системой. |
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 и интервальных типов данных SQL-92. Для других типов данных возвращается значение NULL. |
CHARACTER_SET_CATALOG | Строка | Возвращает значение «master», т. е. имя базы данных, в которой находится кодировка, если столбец имеет символьный тип данных или текстовый тип данных. Иначе возвращается значение NULL. |
CHARACTER_SET_SCHEMA | Строка | Всегда возвращает значение NULL. |
CHARACTER_SET_NAME | Строка | Возвращает уникальное имя для кодировки, если столбец содержит символьные данные или текстовые данные. Иначе возвращается значение NULL. |
COLLATION_CATALOG | Строка | Возвращает значение "master", т.е. имя базы данных, в которой определен параметр сортировки, если столбец имеет символьный тип данных или текстовый тип данных. В противном случае этот столбец содержит значение NULL. |
IS_FILESTREAM | Строка | YES, если для столбца установлен атрибут FILESTREAM. NO, если для столбца не установлен атрибут FILESTREAM. |
IS_SPARSE | Строка | YES, если столбец является разреженным. NO, если столбец не является разреженным. |
IS_COLUMN_SET | Строка | YES, если столбец является набором столбцов. NO, если столбец не является набором столбцов. |
AllColumns
Коллекция схем AllColumns используется для поддержки разреженных столбцов. Для коллекции схем AllColumns установлены те же ограничения и результирующая схема DataTable, что и для коллекции схем Columns. Единственное отличие заключается в том, что коллекция схем AllColumns включает столбцы, представляющие наборы столбцов, которые не входят в коллекцию схем Columns. Эти столбцы описаны в приведенной ниже таблице.
ColumnName | Тип данных | Description |
---|---|---|
TABLE_CATALOG | Строка | Каталог таблицы. |
TABLE_SCHEMA | Строка | Схема, которая содержит таблицу. |
TABLE_NAME | Строка | Имя таблицы. |
COLUMN_NAME | Строка | Имя столбца. |
ORDINAL_POSITION | Int32 | Идентификационный номер столбца. |
COLUMN_DEFAULT | Строка | Значение столбца по умолчанию. |
IS_NULLABLE | Строка | Указывает, может ли столбец допускать значение NULL. Если для столбца допустимо значение NULL, этот столбец возвращает значение YES. Иначе возвращается значение NO. |
DATA_TYPE | Строка | Тип данных, поддерживаемый системой. |
CHARACTER_MAXIMUM_LENGTH | Int32 | Максимальная длина в символах для двоичных данных, символьных данных или текстовых данных и изображений. Иначе возвращается значение NULL. |
CHARACTER_OCTET_LENGTH | Int32 | Максимальная длина в байтах для двоичных данных, символьных данных или текстовых данных и изображений. Иначе возвращается значение NULL. |
NUMERIC_PRECISION | Unsigned Byte | Точность приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. Иначе возвращается значение NULL. |
NUMERIC_PRECISION_RADIX | Int16 | Основание системы счисления точности приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. Иначе возвращается значение NULL. |
NUMERIC_SCALE | Int32 | Масштаб приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. Иначе возвращается значение NULL. |
DATETIME_PRECISION | Int16 | Код подтипа для datetime и интервальных типов данных SQL-92. Для других типов данных возвращается значение NULL. |
CHARACTER_SET_CATALOG | Строка | Возвращает значение «master», т. е. имя базы данных, в которой находится кодировка, если столбец имеет символьный тип данных или текстовый тип данных. Иначе возвращается значение NULL. |
CHARACTER_SET_SCHEMA | Строка | Всегда возвращает значение NULL. |
CHARACTER_SET_NAME | Строка | Возвращает уникальное имя для кодировки, если столбец содержит символьные данные или текстовые данные. Иначе возвращается значение NULL. |
COLLATION_CATALOG | Строка | Возвращает значение "master", т.е. имя базы данных, в которой определен параметр сортировки, если столбец имеет символьный тип данных или текстовый тип данных. В противном случае этот столбец содержит значение NULL. |
IS_FILESTREAM | Строка | YES, если для столбца установлен атрибут FILESTREAM. NO, если для столбца не установлен атрибут FILESTREAM. |
IS_SPARSE | Строка | YES, если столбец является разреженным. NO, если столбец не является разреженным. |
IS_COLUMN_SET | Строка | YES, если столбец является набором столбцов. NO, если столбец не является набором столбцов. |
ColumnSetColumns
Коллекция схем ColumnSetColumns используется для поддержки разреженных столбцов. Коллекция схем ColumnSetColumns возвращает схему для всех столбцов в наборе столбцов. Эти столбцы описаны в приведенной ниже таблице.
ColumnName | Тип данных | Description |
---|---|---|
TABLE_CATALOG | Строка | Каталог таблицы. |
TABLE_SCHEMA | Строка | Схема, которая содержит таблицу. |
TABLE_NAME | Строка | Имя таблицы. |
COLUMN_NAME | Строка | Имя столбца. |
ORDINAL_POSITION | Int32 | Идентификационный номер столбца. |
COLUMN_DEFAULT | Строка | Значение столбца по умолчанию. |
IS_NULLABLE | Строка | Указывает, может ли столбец допускать значение NULL. Если для столбца допустимо значение NULL, этот столбец возвращает значение YES. Иначе возвращается значение NO. |
DATA_TYPE | Строка | Тип данных, поддерживаемый системой. |
CHARACTER_MAXIMUM_LENGTH | Int32 | Максимальная длина в символах для двоичных данных, символьных данных или текстовых данных и изображений. Иначе возвращается значение NULL. |
CHARACTER_OCTET_LENGTH | Int32 | Максимальная длина в байтах для двоичных данных, символьных данных или текстовых данных и изображений. Иначе возвращается значение NULL. |
NUMERIC_PRECISION | Unsigned Byte | Точность приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. Иначе возвращается значение NULL. |
NUMERIC_PRECISION_RADIX | Int16 | Основание системы счисления точности приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. Иначе возвращается значение NULL. |
NUMERIC_SCALE | Int32 | Масштаб приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. Иначе возвращается значение NULL. |
DATETIME_PRECISION | Int16 | Код подтипа для datetime и интервальных типов данных SQL-92. Для других типов данных возвращается значение NULL. |
CHARACTER_SET_CATALOG | Строка | Возвращает значение «master», т. е. имя базы данных, в которой находится кодировка, если столбец имеет символьный тип данных или текстовый тип данных. Иначе возвращается значение NULL. |
CHARACTER_SET_SCHEMA | Строка | Всегда возвращает значение NULL. |
CHARACTER_SET_NAME | Строка | Возвращает уникальное имя для кодировки, если столбец содержит символьные данные или текстовые данные. Иначе возвращается значение NULL. |
COLLATION_CATALOG | Строка | Возвращает значение "master", т.е. имя базы данных, в которой определен параметр сортировки, если столбец имеет символьный тип данных или текстовый тип данных. В противном случае этот столбец содержит значение NULL. |
IS_FILESTREAM | Строка | YES, если для столбца установлен атрибут FILESTREAM. NO, если для столбца не установлен атрибут FILESTREAM. |
IS_SPARSE | Строка | YES, если столбец является разреженным. NO, если столбец не является разреженным. |
IS_COLUMN_SET | Строка | YES, если столбец является набором столбцов. NO, если столбец не является набором столбцов. |
Пользователи
ColumnName | Тип данных | Description |
---|---|---|
uid | Int16 | Идентификатор пользователя, уникальный в этой базе данных. 1 — это владелец базы данных. |
user_name | Строка | Имя пользователя или имя группы, уникальные в этой базе данных. |
createdate | Дата/время | Дата добавления этой учетной записи. |
updatedate | Дата/время | Дата последнего изменения учетной записи. |
Представления
ColumnName | Тип данных | Description |
---|---|---|
TABLE_CATALOG | Строка | Каталог представления. |
TABLE_SCHEMA | Строка | Схема, которая содержит представление. |
TABLE_NAME | Строка | Имя представления. |
CHECK_OPTION | Строка | Тип инструкции WITH CHECK OPTION. CASCADE, если первоначальное представление было создано с помощью инструкции WITH CHECK OPTION. Иначе возвращается значение NONE. |
IS_UPDATABLE | Строка | Указывает, можно ли обновлять это представление. Всегда возвращает NO. |
ViewColumns
ColumnName | Тип данных | Description |
---|---|---|
VIEW_CATALOG | Строка | Каталог представления. |
VIEW_SCHEMA | Строка | Схема, которая содержит представление. |
VIEW_NAME | Строка | Имя представления. |
TABLE_CATALOG | Строка | Каталог таблицы, которая связана с этим представлением. |
TABLE_SCHEMA | Строка | Schema, который содержит таблицу, связанную с этим представлением. |
TABLE_NAME | Строка | Имя таблицы, которая связана с представлением. Базовая таблица. |
COLUMN_NAME | Строка | Имя столбца. |
UserDefinedTypes
ColumnName | Тип данных | Description |
---|---|---|
assembly_name | Строка | Имя файла для сборки. |
udt_name | Строка | Имя класса для сборки. |
version_major | Object | Основной номер версии. |
version_minor | Object | Дополнительный номер версии. |
version_build | Object | Номер сборки. |
version_revision | Object | Номер редакции. |
culture_info | Object | Сведения о языке и региональных параметрах, которые связаны с этим определяемым пользователем типом. |
public_key | Object | Открытый ключ, используемый в этой сборке. |
is_fixed_length | Логический | Указывает, является ли длина данных этого типа всегда равной значению max_length. |
max_length | Int16 | Максимальная длина значения типа в байтах. |
Create_Date | Дата/время | Дата создания или регистрации сборки. |
Permission_set_desc | Строка | Удобное в использовании имя набора разрешений и (или) уровня безопасности для сборки. |