sp_columns_ex (Transact-SQL)
Применимо к:SQL Server
Возвращает сведения о столбцах для указанных таблиц связанного сервера по одной строке на столбец. sp_columns_ex возвращает сведения о столбце только для определенного столбца, если указан столбец.
Соглашения о синтаксисе Transact-SQL
Синтаксис
sp_columns_ex [ @table_server = ] 'table_server'
[ , [ @table_name = ] 'table_name' ]
[ , [ @table_schema = ] 'table_schema' ]
[ , [ @table_catalog = ] 'table_catalog' ]
[ , [ @column_name = ] 'column' ]
[ , [ @ODBCVer = ] 'ODBCVer' ]
Аргументы
[ @table_server = ] 'table_server'
Имя связанного сервера, для которого возвращаются сведения о столбцах. table_server — sysname без значения по умолчанию.
[ @table_name = ] 'table_name'
Имя таблицы, для которой возвращаются сведения о столбце. table_name — sysname с значением NULL по умолчанию.
[ @table_schema = ] 'table_schema'
Имя схемы таблицы, для которой возвращаются сведения о столбце. table_schema — sysname с значением NULL по умолчанию.
[ @table_catalog = ] 'table_catalog'
Имя каталога таблицы, для которой возвращаются сведения о столбце. table_catalog — sysname с значением NULL по умолчанию.
[ @column_name = ] 'column'
Имя столбца базы данных, для которого предоставляются сведения. Столбец имеет имя sysname с значением NULL по умолчанию.
[ @ODBCVer = ] 'ODBCVer'
Используется версия ODBC. ODBCVer имеет значение int с значением по умолчанию 2. Это значение соответствует ODBC версии 2. Допустимы значения 2 или 3. Сведения о различиях между версиями 2 и 3 см. в спецификации ODBC SQLColumns.
Значения кода возврата
None
Результирующие наборы
Имя столбца | Тип данных | Описание: |
---|---|---|
TABLE_CAT | sysname | Имя квалификатора таблицы или представления. Различные продукты СУБД поддерживают трехкомпонентное именование таблиц (квалификатор).владелец.имя). В SQL Server этот столбец представляет имя базы данных. В некоторых СУБД он представляет имя сервера в среде базы данных, где находится таблица. Это поле может иметь значение NULL. |
TABLE_SCHEM | sysname | Имя владельца таблицы или представления. В SQL Server этот столбец представляет имя пользователя базы данных, создавшего таблицу. Это поле всегда возвращает значение. |
TABLE_NAME | sysname | Имя таблицы или представления. Это поле всегда возвращает значение. |
COLUMN_NAME | sysname | Имя столбца для каждого столбца возвращаемого TABLE_NAME . Это поле всегда возвращает значение. |
DATA_TYPE | smallint | Целочисленное значение, соответствующий индикатор типа ODBC. Если это тип данных, который не может быть сопоставлен с типом данных ODBC, возвращается значение NULL. Имя собственного типа данных возвращается в столбце TYPE_NAME . |
TYPE_NAME | varchar(13) | Тип данных в символьном представлении. Название типа предоставляется базовой СУБД. |
COLUMN_SIZE | int | Количество значащих цифр. Возвращаемое значение столбца PRECISION находится в базе 10. |
BUFFER_LENGTH | int | Размер буфера при передаче данных. |
DECIMAL_DIGITS | smallint | Число цифр справа от десятичной запятой. |
NUM_PREC_RADIX | smallint | Основание системы счисления для числовых типов данных. |
NULLABLE | smallint | Указывает возможность содержать значение NULL. 1 = значение NULL допустимо. 0 = значение NULL недопустимо. |
ЗАМЕЧАНИЯ | varchar(254) | Это поле всегда возвращает значение NULL. |
COLUMN_DEF | varchar(254) | Значение столбца по умолчанию. |
SQL_DATA_TYPE | smallint | Значение типа данных SQL в том же виде, что и в поле TYPE дескриптора. Этот столбец совпадает с столбцом DATA_TYPE, за исключением типов данных даты и времени и интервала SQL-92. Этот столбец всегда возвращает значение . |
SQL_DATETIME_SUB | smallint | Код подтипа для типов данных datetime и SQL-92 интервала . Для других типов данных этот столбец возвращает значение NULL. |
CHAR_OCTET_LENGTH | int | Максимальная длина столбца символьного или целочисленного типа в байтах. Для всех других типов данных этот столбец возвращает значение NULL. |
ORDINAL_POSITION | int | Порядковый номер столбца в таблице. Первый столбец в таблице имеет порядковый номер 1. Этот столбец всегда возвращает значение . |
IS_NULLABLE | varchar(254) | Способность столбца таблицы содержать значение NULL. Допустимость значений NULL определяется в соответствии с правилами ISO. СУБД, совместимая с ISO SQL, не может вернуть пустую строку. YES = Столбец может содержать значение NULL. NO = Столбец не может содержать значения NULL. Если допустимость значения NULL неизвестна, то этот столбец возвращает строку нулевой длины. Значение, возвращаемое для этого столбца, отличается от значения, возвращаемого для столбца NULLABLE . |
SS_DATA_TYPE | tinyint | Тип данных SQL Server, используемый расширенными хранимыми процедурами. |
Дополнительные сведения см. в документации по Microsoft ODBC.
Замечания
sp_columns_ex выполняется путем запроса набора строк COLUMNS интерфейса IDBSchemaRowset поставщика OLE DB, соответствующего table_server. Параметры table_name, table_schema, table_catalog и столбцов передаются в этот интерфейс, чтобы ограничить возвращаемые строки.
sp_columns_ex возвращает пустой результирующий набор, если поставщик OLE DB указанного связанного сервера не поддерживает набор строк COLUMNS интерфейса IDBSchemaRowset.
sp_columns_ex соответствует требованиям для идентификаторов с разделителями. Дополнительные сведения см. в разделе Идентификаторы баз данных.
Разрешения
Необходимо разрешение SELECT для схемы.
Примеры
В следующем примере возвращается тип данных для столбца JobTitle
в таблице HumanResources.Employee
в базе данных AdventureWorks2022
на связанном сервере Seattle1
.
EXEC sp_columns_ex 'Seattle1',
'Employee',
'HumanResources',
'AdventureWorks2022',
'JobTitle';
См. также
sp_catalogs (Transact-SQL)
sp_foreignkeys (Transact-SQL)
sp_indexes (Transact-SQL)
sp_linkedservers (Transact-SQL)
sp_primarykeys (Transact-SQL)
sp_tables_ex (Transact-SQL)
sp_table_privileges (Transact-SQL)
Системные хранимые процедуры (Transact-SQL)
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по