sys.all_columns (Transact-SQL)

Aplica-se a:yesSQL Server (todas as versões compatíveis) YesBanco de Dados SQL do Azure YesInstância Gerenciada de SQL do Azure yesAzure Synapse Analytics yesAnalytics Platform System (PDW)

Mostra a união de todas as colunas que pertencem a objetos definidos pelo usuário e objetos de sistema.

Nome da coluna Tipo de dados Descrição
object_id int ID do objeto ao qual esta coluna pertence.
name sysname Nome da coluna. É exclusiva no objeto.
column_id int ID da coluna. É exclusiva no objeto.

Os IDs de coluna podem não ser sequenciais.
system_type_id tinyint ID do tipo de sistema da coluna.
user_type_id int ID do tipo da coluna, como definido pelo usuário.

Para retornar o nome do tipo, faça a junção com a exibição do catálogo sys.types nessa coluna.
max_length smallint Comprimento máximo (em bytes) da coluna.

-1 = O tipo de dados de coluna é varchar(max), nvarchar(max), varbinary(max) ou xml.

Para colunas de texto, o valor de max_length será 16 ou o valor definido por 'text in row' de sp_tableoption.
precisão tinyint Precisão da coluna com base numérica, caso contrário é 0.
scale tinyint Escala da coluna com base numérica, caso contrário é 0.
collation_name sysname Nome da ordenação da coluna, se for baseado em caracteres; caso contrário, será NULL.
is_nullable bit 1 = A coluna permite valor nulo.
is_ansi_padded bit 1 = A coluna usa o comportamento ANSI_PADDING ON se for de caractere, binária, ou variante.

0 = A coluna não é de caractere, binária nem variante.
is_rowguidcol bit 1 = A coluna é uma ROWGUIDCOL declarada.
is_identity bit 1 = A coluna tem valores de identidade
is_computed bit 1 = A coluna é computada.
is_filestream bit 1 = A coluna está declarada para usar armazenamento de fluxo de arquivos.
is_replicated bit 1 = A coluna é replicada.
is_non_sql_subscribed bit 1 = A coluna tem um assinante não SQL Server.
is_merge_published bit 1 = A coluna é publicada por mesclagem.
is_dts_replicated bit 1 = A coluna é replicada usando o SSIS.
is_xml_document bit 1 = O conteúdo é um documento XML completo.

0 = O conteúdo é um fragmento de documento ou o tipo de dados da coluna não é XML.
xml_collection_id int Diferente de zero se o tipo de dados da coluna for xml e o XML for digitado. O valor será o ID da coleção que contém o namespace do esquema XML de validação da coluna.

0 = nenhuma coleção de esquemas XML.
default_object_id int ID do objeto padrão, seja ela um sys.sp_bindefault autônomo ou uma restrição DEFAULT embutida no nível da coluna. A coluna parent_object_id de um objeto embutido padrão no nível da coluna é uma referência à própria tabela.

0 = Sem padrão.
rule_object_id int ID da regra autônoma associada à coluna usando sys.sp_bindrule.

0 = Nenhuma regra autônoma.

Para restrições CHECK no nível da coluna, confira sys.check_constraints (Transact-SQL).
is_sparse bit 1 = A coluna é esparsa. Para obter mais informações, veja Usar colunas esparsas.
is_column_set bit 1 = A coluna é um conjunto de colunas. Para obter mais informações, veja Usar conjuntos de colunas.
generated_always_type tinyint Aplica-se a: SQL Server 2016 (13.x) e posterior, Banco de Dados SQL. 7, 8, 9, 10 se aplicam apenas ao Banco de Dados SQL.

Identifica quando o valor da coluna é gerado (sempre será 0 para colunas em tabelas do sistema):

0 = NOT_APPLICABLE
1 = AS_ROW_START
2 = AS_ROW_END
7 = AS_TRANSACTION_ID_START
8 = AS_TRANSACTION_ID_END
9 = AS_SEQUENCE_NUMBER_START
10 = AS_SEQUENCE_NUMBER_END

Para saber mais, confira Tabelas temporais (bancos de dados relacionais).
generated_always_type_desc nvarchar(60) Aplica-se a: SQL Server 2016 (13.x) e posterior, Banco de Dados SQL.

Descrição textual do valor de generated_always_type (sempre NOT_APPLICABLE para colunas em tabelas do sistema)

NOT_APPLICABLE
AS_ROW_START
AS_ROW_END

Aplica-se a: começando com o SQL Server 2022, Banco de Dados SQL

AS_TRANSACTION_ID_START
AS_TRANSACTION_ID_END
AS_SEQUENCE_NUMBER_START
AS_SEQUENCE_NUMBER_END
ledger_view_column_type tinyint Aplica-se a: começando com o SQL Server 2022, Banco de Dados SQL.

Quando não é NULL, indica o tipo de uma coluna em uma exibição do razão:

1 = TRANSACTION_ID
2 = SEQUENCE_NUMBER
3 = OPERATION_TYPE
4 = OPERATION_TYPE_DESC

Para obter mais informações sobre o razão do banco de dados, confira Razão.
ledger_view_column_type_desc nvarchar(60) Aplica-se a: começando com o SQL Server 2022, Banco de Dados SQL.

Quando não é NULL, contém uma descrição textual do tipo de uma coluna em uma exibição do razão:

TRANSACTION_ID
SEQUENCE_NUMBER
OPERATION_TYPE
OPERATION_TYPE_DESC

Permissões

A visibilidade dos metadados em exibições do catálogo está limitada aos protegíveis que pertencem a um usuário ou para os quais o usuário recebeu permissão. Para obter mais informações, consulte Metadata Visibility Configuration.

Consulte Também

Exibições do catálogo de objeto (Transact-SQL)
Exibições do Catálogo (Transact-SQL)
Consultando as perguntas frequentes do catálogo do sistema do SQL Server
sys.columns (Transact-SQL)
sys.system_columns (Transact-SQL)
sys.computed_columns (Transact-SQL)