Compartilhar via


COLUMNS (Transact-SQL)

Retorna uma linha para cada coluna que pode ser acessada pelo usuário atual no banco de dados atual.

Para recuperar informações sobre essas exibições, especifique o nome totalmente qualificado de INFORMATION_SCHEMA*.*view_name.

Nome da coluna

Tipo de dados

Descrição

TABLE_CATALOG

nvarchar(128)

Qualificador da tabela.

TABLE_SCHEMA

nvarchar(128)

Nome do esquema que contém a tabela.

Observação importanteImportante

Não use exibições INFORMATION_SCHEMA para determinar o esquema de um objeto. A única maneira confiável de localizar o esquema de um objeto é consultar a exibição do catálogo sys.objects.

TABLE_NAME

nvarchar(128)

Nome da tabela.

COLUMN_NAME

nvarchar(128)

Nome da coluna.

ORDINAL_POSITION

int

Número de identificação da coluna.

COLUMN_DEFAULT

nvarchar(4000)

Valor padrão da coluna.

IS_NULLABLE

varchar(3)

Possibilidade de nulidade da coluna. Se essa coluna permitir NULL, ela retornará YES. Caso contrário, será retornado NO.

DATA_TYPE

nvarchar(128)

Tipo de dados fornecido pelo sistema.

CHARACTER_MAXIMUM_LENGTH

int

Comprimento máximo, em caracteres, de dados binários, dados de caracteres e dados de texto e imagem.

-1 para xml e dados do tipo de valor grande. Caso contrário, será retornado NULL. Para obter mais informações, consulte Tipos de dados (Transact-SQL).

CHARACTER_OCTET_LENGTH

int

Comprimento máximo, em bytes, de dados binários, dados de caracteres e dados de texto e imagem.

-1 para xml e dados do tipo de valor grande. Caso contrário, será retornado NULL.

NUMERIC_PRECISION

tinyint

Precisão de dados numéricos aproximados, dados numéricos exatos, dados de inteiro ou dados monetários. Caso contrário, será retornado NULL.

NUMERIC_PRECISION_RADIX

smallint

Base de precisão de dados numéricos aproximados, dados numéricos exatos, dados de inteiro ou dados monetários. Caso contrário, será retornado NULL.

NUMERIC_SCALE

int

Escala de dados numéricos aproximados, dados numéricos exatos, dados de inteiro ou dados monetários. Caso contrário, será retornado NULL.

DATETIME_PRECISION

smallint

Código de subtipo para tipos de dados datetime e interval ISO. Para outros tipos de dados, é retornado NULL.

CHARACTER_SET_CATALOG

nvarchar(128)

Retorna master. Isto indica o banco de dados em que o conjunto de caracteres fica situado; se a coluna é de dados de caractere ou de tipo de dados text. Caso contrário, será retornado NULL.

CHARACTER_SET_SCHEMA

nvarchar(128)

Sempre retorna NULL.

CHARACTER_SET_NAME

nvarchar(128)

Retorna o nome único para o conjunto de caracteres se essa coluna for de dados de caractere ou de tipo de dados text. Caso contrário, será retornado NULL.

COLLATION_CATALOG

nvarchar(128)

Sempre retorna NULL.

COLLATION_SCHEMA

nvarchar(128)

Sempre retorna NULL.

COLLATION_NAME

nvarchar(128)

Retornará um nome exclusivo para o agrupamento se a coluna for de dados de caractere ou de tipo de dados text. Caso contrário, será retornado NULL.

DOMAIN_CATALOG

nvarchar(128)

Se a coluna for do tipo de dados de alias, essa coluna será o nome do banco de dados no qual foi criado o tipo de dados definido pelo usuário. Caso contrário, será retornado NULL.

DOMAIN_SCHEMA

nvarchar(128)

Se a coluna for do tipo de dados definido pelo usuário, essa coluna retornará o nome do esquema do tipo de dados definido pelo usuário. Caso contrário, será retornado NULL.

Observação importanteImportante

Não use exibições INFORMATION_SCHEMA para determinar o esquema de um tipo de dados. O único modo seguro para localizar o esquema de um tipo é usar a função TYPEPROPERTY.

DOMAIN_NAME

nvarchar(128)

Se a coluna for do tipo de dados definido pelo usuário, essa coluna será o nome do tipo de dados definido pelo usuário. Caso contrário, será retornado NULL.

Comentários

A coluna ORDINAL_POSITION da exibição INFORMATION_SCHEMA.COLUMNS não é compatível com o padrão de bit de colunas retornadas pela função COLUMNS_UPDATED. Para obter o padrão de bit compatível com COLUMNS_UPDATED, é preciso fazer referência à propriedade ColumnID da função do sistema COLUMNPROPERTY ao consultar a exibição INFORMATION_SCHEMA.COLUMNS. Por exemplo:

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

Consulte também

Referência

exibições do sistema (Transact-SQL)

exibições do esquema de informações (Transact-SQL)

sys.syscharsets (Transact-SQL)

sys.columns (Transact-SQL)

sys.sql_modules (Transact-SQL)

sys.configurations (Transact-SQL)

sys.objects (Transact-SQL)

sys.types (Transact-SQL)

COLUMNS_UPDATED (Transact-SQL)