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 dessas 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.
Importante
Não use exibições INFORMATION_SCHEMA para determinar o esquema de um objeto. O único modo seguro de localizar o esquema de um objeto é consultar a exibição de 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. O SQL Server 2008 difere do SQL Server 2000 na maneira como decodifica e armazena expressões SQL nos metadados do catálogo. A semântica da expressão decodificada equivale ao texto original; porém, não há nenhuma garantia sintática. Por exemplo, os espaços em branco são removidos da expressão decodificada. Para obter mais informações, consulte Alterações de comportamento em recursos do Mecanismo de Banco de Dados no SQL Server 2008 R2. |
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 ou 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. Indica o banco de dados em que o conjunto de caracteres fica localizado; 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) |
Retornará o nome exclusivo 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.
Importante
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 AdventureWorks2008R2;
GO
SELECT TABLE_NAME, COLUMN_NAME, COLUMNPROPERTY(OBJECT_ID(TABLE_SCHEMA + '.' + TABLE_NAME), COLUMN_NAME, 'ColumnID') AS COLUMN_ID
FROM AdventureWorks2008R2.INFORMATION_SCHEMA.COLUMNS
WHERE TABLE_NAME = 'Person';
GO
Consulte também