Поделиться через


COLUMNS (Transact-SQL)

Применимо к:SQL Server База данных SQL Azure Управляемый экземпляр SQL Azure Управляемый экземпляр SQL Azure Конечная точка аналитики аналитики Synapse Analytics Analytics (PDW)SQL Analyticsв Microsoft FabricХранилище в Microsoft Fabric

Возвращает одну строку для каждого столбца, доступного для текущего пользователя в текущей базе данных.

Чтобы получить сведения из этих представлений , укажите полное имя INFORMATION_SCHEMA.view_name.

Имя столбца Тип данных Description
TABLE_CATALOG nvarchar(128) Квалификатор таблицы.
TABLE_SCHEMA nvarchar(128) Имя схемы, содержащей таблицу.

Важно. Не используйте представления INFORMATION_SCHEMA для определения схемы объекта. INFORMATION_SCHEMA представления представляют только подмножество метаданных объекта. Единственный надежный способ найти схему объекта — запрашивать sys.objects представление каталога.
TABLE_NAME nvarchar(128) Имя таблицы.
COLUMN_NAME nvarchar(128) Имя столбца.
ORDINAL_POSITION int Идентификационный номер столбца.
COLUMN_DEFAULT nvarchar(4000) Значение столбца по умолчанию.
IS_NULLABLE varchar(3) Указывает, может ли столбец допускать значение NULL. Если для столбца допустимо значение NULL, этот столбец возвращает значение YES. Иначе возвращается значение NO.
DATA_TYPE nvarchar(128) Тип данных, поддерживаемый системой.
CHARACTER_MAXIMUM_LENGTH int Максимальная длина в символах для двоичных данных, символьных данных или текстовых данных и изображений.

-1 для данных типа XML и больших значений. Иначе возвращается значение NULL. Дополнительные сведения см. в разделе Типы данных (Transact-SQL).
CHARACTER_OCTET_LENGTH int Максимальная длина в байтах для двоичных данных, символьных данных или текстовых данных и изображений.

-1 для данных типа XML и больших значений. Иначе возвращается значение NULL.
NUMERIC_PRECISION tinyint Точность приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. Иначе возвращается значение NULL.
NUMERIC_PRECISION_RADIX smallint Основание системы счисления точности приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. Иначе возвращается значение NULL.
NUMERIC_SCALE int Масштаб приблизительных числовых данных, точных числовых данных, целочисленных данных или денежных данных. Иначе возвращается значение NULL.
DATETIME_PRECISION smallint Код подтипа для типов данных datetime и интервала ISO. Для других типов данных возвращается значение NULL.
CHARACTER_SET_CATALOG nvarchar(128) Возвращает главный объект. Это означает базу данных, в которой расположен набор символов, если столбец является символьными данными или текстовыми данными. Иначе возвращается значение NULL.
CHARACTER_SET_SCHEMA nvarchar(128) Всегда возвращает значение NULL.
CHARACTER_SET_NAME nvarchar(128) Возвращает уникальное имя для набора символов, если этот столбец является символьным или текстовым типом данных. Иначе возвращается значение NULL.
COLLATION_CATALOG nvarchar(128) Всегда возвращает значение NULL.
COLLATION_SCHEMA nvarchar(128) Всегда возвращает значение NULL.
COLLATION_NAME nvarchar(128) Возвращает уникальное имя сортировки, если столбец — символьные данные или текстовый тип данных. Иначе возвращается значение NULL.
DOMAIN_CATALOG nvarchar(128) Если столбец имеет тип данных псевдонима, то этот столбец содержит имя базы данных, в которой был создан определяемый пользователем тип данных. Иначе возвращается значение NULL.
DOMAIN_SCHEMA nvarchar(128) Если столбец имеет определяемый пользователем тип данных, то столбец возвращает имя схемы этого типа данных. Иначе возвращается значение NULL.

Важно. Не используйте представления INFORMATION_SCHEMA для определения схемы типа данных. Единственный надежный способ найти схему типа — использовать функцию TYPEPROPERTY.
DOMAIN_NAME nvarchar(128) Если столбец имеет определяемый пользователем тип данных, то столбец является именем этого типа данных. Иначе возвращается значение NULL.

Замечания

Столбец ORDINAL_POSITION INFORMATION_SCHEMA. Представление COLUMNS несовместимо с битовой структурой столбцов, возвращаемых функцией COLUMNS_UPDATED. Чтобы получить битовый шаблон, совместимый с COLUMNS_UPDATED, необходимо ссылаться на свойство ColumnID системной функции COLUMNPROPERTY при запросе INFORMATION_SCHEMA. Представление COLUMNS . Например:

USE AdventureWorks2022;  
GO  
SELECT TABLE_NAME, COLUMN_NAME, COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME), COLUMN_NAME, 'ColumnID') AS COLUMN_ID  
FROM AdventureWorks2022.INFORMATION_SCHEMA.COLUMNS  
WHERE TABLE_NAME = 'Person';  
GO  

См. также