Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Banco de Dados SQL do
AzureInstância
Gerenciada de SQL do AzureBanco de dados SQL no Microsoft Fabric
Essa função retorna informações de coluna ou parâmetro.
Convenções de sintaxe de Transact-SQL
Sintaxe
COLUMNPROPERTY ( id , column , property )
Argumentos
id
Uma expressão que contém o identificador (ID) da tabela ou procedimento.
column
Uma expressão que contém o nome da coluna ou parâmetro.
property
Para o argumento id, o argumento propriedade especifica o tipo de informação que a função COLUMNPROPERTY retornará. O argumento property pode ter qualquer um destes valores:
| Valor | Descrição | Valor retornado |
|---|---|---|
| AllowsNull | Permite valores nulos. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| ColumnId | Valor de ID da coluna que corresponde a sys.columns.column_id. | ID da coluna Observação: ao consultar várias colunas, podem aparecer intervalos na sequência de valores de ID da coluna. |
| FullTextTypeColumn | A TYPE COLUMN na tabela contendo as informações de tipo de documento da coluna. | ID de TYPE COLUMN de texto completo da expressão de nome de coluna passada como segundo parâmetro dessa função. |
| GeneratedAlwaysType | O valor da coluna é gerado pelo sistema. Corresponde a sys.columns.generated_always_type |
Aplica-se a: SQL Server 2016 (13.x) e posterior. 0: não é gerado sempre 1: gerado sempre no início da linha 2: gerado sempre no fim da linha |
| IsColumnSet | A coluna é um conjunto de colunas. Para obter mais informações, veja Usar conjuntos de colunas. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsComputed | É uma coluna computada. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsCursorType | O parâmetro de procedimento é do tipo CURSOR. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsDeterministic | A coluna é determinística. Essa propriedade só se aplica a colunas computadas e colunas de exibição. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. Não é uma coluna computada nem uma coluna de exibição. |
| IsFulltextIndexed | A coluna está registrada para indexação de texto completo. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsHidden | O valor da coluna é gerado pelo sistema. Corresponde a sys.columns.is_hidden |
Aplica-se a: SQL Server 2016 (13.x) e posterior. 0: não oculto 1: oculto |
| IsIdentity | A coluna usa a propriedade IDENTITY. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsIdNotForRepl | A coluna verifica a configuração de IDENTITY_INSERT. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsIndexable | A coluna pode ser indexada. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsOutParam | O parâmetro do procedimento é um parâmetro de saída. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsPrecise | A coluna é precisa. Essa propriedade só se aplica a colunas determinísticas. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. Não é uma coluna determinística |
| IsRowGuidCol | A coluna tem o tipo de dados uniqueidentifier e está definida com a propriedade ROWGUIDCOL. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsSparse | A coluna é esparsa. Para obter mais informações, veja Usar colunas esparsas. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsSystemVerified | O Mecanismo de Banco de Dados pode verificar as propriedades de determinismo e precisão da coluna. Essa propriedade só se aplica a colunas computadas e colunas de exibições. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| IsXmlIndexable | A coluna XML pode ser usada em um índice XML. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
| Precisão | Comprimento do tipo de dados da coluna ou parâmetro. | Comprimento do tipo de dados de coluna especificado -1: xml ou tipos de valor grande NULL = entrada inválida. |
| Escala | Escala para o tipo de dados de parâmetro ou coluna. | O valor de escala NULL = entrada inválida. |
| StatisticalSemantics | A coluna está habilitada para indexação semântica. | 1: VERDADEIRO 0: FALSO |
| SystemDataAccess | A coluna é derivada de uma função que acessa dados nos catálogos do sistema ou tabelas do sistema virtuais do SQL Server. Essa propriedade só se aplica a colunas computadas e colunas de exibições. | 1 = TRUE (indica acesso somente leitura.) 0: FALSO NULL = entrada inválida. |
| UserDataAccess | A coluna é derivada de uma função que acessa dados em tabelas de usuário, incluindo exibições e tabelas temporárias, armazenadas na instância local do SQL Server. Essa propriedade só se aplica a colunas computadas e colunas de exibições. | 1 = TRUE (indica acesso somente leitura.) 0: FALSO NULL = entrada inválida. |
| UsesAnsiTrim | ANSI_PADDING foi definido como ON no momento da criação da tabela. Essa propriedade aplica-se apenas a colunas ou parâmetros do tipo char ou varchar. | 1: VERDADEIRO 0: FALSO NULL = entrada inválida. |
Tipos de retorno
int
Exceções
Retornará NULL em caso de erro ou se um chamador não tiver permissão para exibir o objeto.
Um usuário só pode exibir metadados de protegíveis de sua propriedade ou para os quais recebeu permissão. Isso significa que as funções internas que emitem metadados, como COLUMNPROPERTY, poderão retornar NULL se o usuário não tiver a permissão correta para o objeto. Veja Configuração de Visibilidade de Metadados para obter mais informações.
Comentários
Ao verificar a propriedade determinística de uma coluna, teste primeiro se a coluna é uma coluna computada. O argumento IsDeterministic retorna NULL para colunas não computadas. Colunas computadas podem ser especificadas como colunas de índice.
Exemplos
Este exemplo retorna o comprimento da coluna LastName.
USE AdventureWorks2022;
GO
SELECT COLUMNPROPERTY( OBJECT_ID('Person.Person'),'LastName','PRECISION')AS 'Column Length';
GO
Veja a seguir o conjunto de resultados.
Column Length
-------------
50
Confira também
funções de metadados (Transact-SQL)
TYPEPROPERTY (Transact-SQL)