Partilhar via


PROPRIEDADE COLUMNA (Transact-SQL)

Aplica-se a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de dados SQL no Microsoft Fabric

Esta função devolve informação sobre colunas ou parâmetros.

Transact-SQL convenções de sintaxe

Sintaxe

COLUMNPROPERTY ( id , column , property )   

Arguments

ID
Uma expressão contendo o identificador (ID) da tabela ou procedimento.

coluna
Uma expressão contendo o nome da coluna ou parâmetro.

propriedade
Para o argumento id , o argumento de propriedade especifica o tipo de informação que a COLUMNPROPERTY função irá devolver. O argumento da propriedade pode ter qualquer um destes valores:

Valor Description Valor devolvido
AllowsNull Permite valores nulos. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
ColumnId Valor do ID da coluna correspondente a sys.columns.column_id. Identificador da Coluna

Nota: Ao consultar múltiplas colunas, podem aparecer lacunas na sequência dos valores do ID da coluna.
ColunaTipoDeTexto Completo A coluna TYPE na tabela que contém a informação do tipo de documento da coluna. ID da coluna TYPE em texto completo para a expressão do nome da coluna passada como segundo parâmetro desta função.
GeneratedAlwaysType É gerado pelo sistema de valores de coluna. Corresponde a sys.columns.generated_always_type Aplica-se a: SQL Server 2016 (13.x) e posterior.

0: Não é sempre gerado

1: Gerado sempre no início da fila

2: Gerado sempre no final da linha
IsColumnSet Coluna é um conjunto de colunas. Para obter mais informações, consulte Utilize conjuntos de colunas. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
IsComputed Coluna é uma coluna calculada. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
IsCursorType O parâmetro do procedimento é do tipo CURSOR. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
IsDeterminista A coluna é determinística. Esta propriedade aplica-se apenas a colunas computadas e colunas de visualização. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida. Não é uma coluna calculada ou uma coluna de visualização.
IsFulltextIndexed A coluna está registada para indexação em texto completo. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
IsHidden É gerado pelo sistema de valores de coluna. Corresponde a sys.columns.is_hidden Aplica-se a: SQL Server 2016 (13.x) e posterior.

0: Não escondido

1: Oculto
IsIdentity A coluna utiliza a propriedade IDENTITY. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
IsIdNotForRepl Verificações de coluna para a definiçã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 de procedimento é um parâmetro de saída. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
IsPrecise A coluna é precisa. Esta propriedade aplica-se apenas 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 dado uniqueidentifier , e é definida com a propriedade ROWGUIDCOL. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
IsSparse Coluna é uma coluna esparsa. Para obter mais informações, consulte Usar colunas esparsas. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
IsSystemVerified O Motor de Base de Dados pode verificar o determinismo e as propriedades de precisão da coluna. Esta propriedade aplica-se apenas a colunas e colunas de vistas calculadas. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
IsXmlIndexable A coluna XML pode ser usada num índice XML. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.
Precision Tipo de dado, comprimento da coluna ou parâmetro. O comprimento do tipo de dados da coluna especificado

-1: xml ou tipos de grande valor

NULL: entrada inválida.
Escala Escala para o tipo de dados da coluna ou parâmetro. O valor da escala

NULL: entrada inválida.
Semântica estatística A coluna está ativada para indexação semântica. 1: VERDADEIRO

0: FALSO
SystemDataAccess A coluna deriva de uma função que acede a dados nos catálogos do sistema ou nas tabelas virtuais do SQL Server. Esta propriedade aplica-se apenas a colunas e colunas de vistas calculadas. 1: TRUE (Indica acesso apenas de leitura.)

0: FALSO

NULL: entrada inválida.
UserDataAccess A coluna deriva de uma função que acede a dados em tabelas de utilizador, incluindo vistas e tabelas temporárias, armazenadas na instância local do SQL Server. Esta propriedade aplica-se apenas a colunas e colunas de vistas calculadas. 1: TRUE (Indica acesso apenas de leitura.)

0: FALSO

NULL: entrada inválida.
UtilizaçõesAnsiTrim ANSI_PADDING estava ativado na altura da criação da mesa. Esta propriedade aplica-se apenas a colunas ou parâmetros do tipo char ou varchar. 1: VERDADEIRO

0: FALSO

NULL: entrada inválida.

Tipos de devolução

int

Exceptions

Retorna NULL em caso de erro, ou se um chamador não tiver permissão para visualizar o objeto.

Um usuário só pode visualizar os metadados de protegíveis que o usuário possui ou sobre os quais o usuário recebeu permissão. Isto significa que funções incorporadas que emitem metadados, como poderão COLUMNPROPERTY devolver NULL, se o utilizador não tiver a permissão correta sobre o objeto. Consulte Configuração de Visibilidade de Metadados para mais informações.

Observações

Ao verificar a propriedade determinística de uma coluna, teste primeiro se a coluna é uma coluna calculada. O argumento IsDeterministic devolve NULL para colunas não calculadas. Colunas calculadas podem ser especificadas como colunas de índice.

Examples

Este exemplo devolve o comprimento da LastName coluna.

USE AdventureWorks2022;  
GO  
SELECT COLUMNPROPERTY( OBJECT_ID('Person.Person'),'LastName','PRECISION')AS 'Column Length';  
GO  

Aqui está o conjunto de resultados.

Column Length
-------------
50

Consulte também

Funções de metadados (Transact-SQL)
TYPEPROPERTY (Transact-SQL)