Partilhar via


sp_columns_ex (Transact-SQL)

Aplica-se a:SQL Server

Devolve a informação da coluna, uma linha por coluna, para as tabelas de servidores ligados especificadas. sp_columns_ex retorna a informação da coluna apenas para a coluna específica se @column_name for especificado.

Transact-SQL convenções de sintaxe

Sintaxe

sp_columns_ex
    [ @table_server = ] N'table_server'
    [ , [ @table_name = ] N'table_name' ]
    [ , [ @table_schema = ] N'table_schema' ]
    [ , [ @table_catalog = ] N'table_catalog' ]
    [ , [ @column_name = ] N'column_name' ]
    [ , [ @ODBCVer = ] ODBCVer ]
[ ; ]

Arguments

[ @table_server = ] N'table_server'

O nome do servidor ligado para o qual devolver a informação da coluna. @table_server é sysname, sem padrão.

[ @table_name = ] N'table_name'

O nome da tabela para a qual devolver a informação da coluna. @table_name é sysname, com um padrão de NULL.

[ @table_schema = ] N'table_schema'

O nome do esquema da tabela para a qual devolver a informação da coluna. @table_schema é sysname, com o padrão de NULL.

[ @table_catalog = ] N'table_catalog'

O nome do catálogo da tabela para a qual devolver a informação da coluna. @table_catalog é sysname, com um padrão de NULL.

[ @column_name = ] N'column_name'

O nome da coluna da base de dados para a qual fornecer informação. @column_name é sysname, com um padrão de NULL.

[ @ODBCVer = ] ODBCVer

A versão do ODBC que está a ser utilizada. @ODBCVer é int, com um padrão de 2. Isto indica a Versão 2 do ODBC. Os valores válidos são 2 ou 3. Para informações sobre as diferenças de comportamento entre as versões 2 e 3, consulte a especificação ODBC SQLColumns .

Valores de código de retorno

Nenhum.

Conjunto de resultados

Nome da coluna Tipo de dados Description
TABLE_CAT sysname Nome do qualificador da tabela ou da vista. Vários produtos SGBD suportam a nomenclatura em três partes para tabelas (<qualifier>.<owner>.<name>). No SQL Server, esta coluna representa o nome da base de dados. Em alguns produtos, representa o nome do servidor do ambiente de base de dados da tabela. Este campo pode ser NULL.
TABLE_SCHEM sysname Nome do proprietário da tabela ou da vista. No SQL Server, esta coluna representa o nome do utilizador da base de dados que criou a tabela. Este campo devolve sempre um valor.
TABLE_NAME sysname Nome da tabela ou da vista. Este campo devolve sempre um valor.
COLUMN_NAME sysname Nome da coluna, para cada coluna do TABLE_NAME devolvido. Este campo devolve sempre um valor.
DATA_TYPE smallint Um valor int que corresponde a indicadores do tipo ODBC. Se este for um tipo de dado que não pode ser mapeado para um tipo ODBC, este valor é NULL. O nome do tipo de dado nativo é devolvido na TYPE_NAME coluna.
TYPE_NAME varchar(13) Cadeia que representa um tipo de dado. O SGBD subjacente apresenta este nome de tipo de dado.
COLUMN_SIZE int Número de dígitos significativos. O valor de retorno da PRECISION coluna está na base 10.
BUFFER_LENGTH int Tamanho de transferência dos dados.1
DECIMAL_DIGITS smallint Número de dígitos à direita da vírgula decimal.
NUM_PREC_RADIX smallint A base para tipos de dados numéricos.
NULLABLE smallint Especifica a nulidade.

1 = NULL é possível.
0 = NOT NULL.
REMARKS Varchar (254) Este campo devolve NULLsempre .
COLUMN_DEF Varchar (254) Valor padrão da coluna.
SQL_DATA_TYPE smallint Valor do tipo de dado SQL tal como aparece no TYPE campo do descriptor. Esta coluna é igual à DATA_TYPE coluna, exceto pelos tipos de dados data-hora e intervalo SQL-92. Esta coluna devolve sempre um valor.
SQL_DATETIME_SUB smallint Código de subtipo para tipos de dados data-hora e intervalo SQL-92. Para outros tipos de dados, esta coluna devolve NULL.
CHAR_OCTET_LENGTH int Comprimento máximo em bytes de uma coluna de tipo de dado de carácter ou inteiro. Para todos os outros tipos de dados, esta coluna devolve NULL.
ORDINAL_POSITION int Posição ordinal da coluna na tabela. A primeira coluna da tabela é 1. Esta coluna devolve sempre um valor.
IS_NULLABLE Varchar (254) Nulidade da coluna na tabela. As regras ISO são seguidas para determinar a nulidade. Um SGBD compatível com ISO SQL não pode devolver uma string vazia.

YES = Coluna pode incluir NULL.
NO = A coluna não pode incluir NULL.

Esta coluna devolve uma cadeia de comprimento zero se a nulidade for desconhecida.

O valor devolvido para esta coluna é diferente do valor devolvido para a NULLABLE coluna.
SS_DATA_TYPE tinyint Tipo de dado SQL Server, utilizado por procedimentos armazenados estendidos.

Para mais informações, consulte Visão Geral ODBC.

Observações

  • sp_columns_ex é executado consultando o COLUMNS conjunto de linhas da IDBSchemaRowset interface do fornecedor OLE DB correspondente a @table_server. Os parâmetros @table_name, @table_schema, @table_catalog e @column_name são passados para esta interface para restringir as linhas devolvidas.

  • sp_columns_ex retorna um conjunto de resultados vazio se o fornecedor OLE DB do servidor ligado especificado não suportar o COLUMNS conjunto de linhas da IDBSchemaRowset interface.

  • sp_columns_ex segue os requisitos para identificadores delimitados. Para obter mais informações, consulte Identificadores de banco de dados.

Permissions

Requer SELECT permissão no esquema.

Examples

O exemplo seguinte devolve o tipo de dados da JobTitle coluna da HumanResources.Employee tabela na AdventureWorks2025 base de dados no servidor Seattle1ligado .

EXECUTE sp_columns_ex 'Seattle1',
    'Employee',
    'HumanResources',
    'AdventureWorks2022',
    'JobTitle';