sp_columns_ex (Transact-SQL)
Aplica-se a:SQL Server
Retorna as informações da coluna, uma linha por coluna, para as tabelas especificadas do servidor vinculado. sp_columns_ex retorna informações de coluna apenas para a coluna específica se a coluna for especificada.
Convenções de sintaxe de Transact-SQL
Sintaxe
sp_columns_ex [ @table_server = ] 'table_server'
[ , [ @table_name = ] 'table_name' ]
[ , [ @table_schema = ] 'table_schema' ]
[ , [ @table_catalog = ] 'table_catalog' ]
[ , [ @column_name = ] 'column' ]
[ , [ @ODBCVer = ] 'ODBCVer' ]
Argumentos
[ @table_server = ] 'table_server'
É o nome do servidor vinculado para o qual retornar informações de coluna. table_server é sysname, sem padrão.
[ @table_name = ] 'table_name'
É o nome da tabela para a qual retornar informações de coluna. table_name é sysname, com um padrão de NULL.
[ @table_schema = ] 'table_schema'
É o nome do esquema da tabela para a qual retornar informações de coluna. table_schema é sysname, com um padrão de NULL.
[ @table_catalog = ] 'table_catalog'
É o nome do catálogo da tabela para a qual retornar informações de coluna. table_catalog é sysname, com um padrão de NULL.
[ @column_name = ] 'column'
É o nome da coluna de banco de dados para a qual fornecer informações. column é sysname, com um padrão de NULL.
[ @ODBCVer = ] 'ODBCVer'
É a versão do ODBC que está sendo usada. ODBCVer é int, com um padrão de 2. Isto indica ODBC versão 2. Os valores válidos são 2 ou 3. Para obter informações sobre as diferenças de comportamento entre as versões 2 e 3, consulte a especificação de SQLColumns ODBC.
Valores do código de retorno
Nenhum
Conjuntos de resultados
Nome da coluna | Tipo de dados | Descrição |
---|---|---|
TABLE_CAT | sysname | Nome do qualificador da tabela ou exibição. Vários produtos DBMS dão suporte à nomenclatura de três partes para tabelas (qualificador.proprietário.name). Em SQL Server esta coluna representa o nome do banco de dados. Em alguns produtos, ele representa o nome do servidor do ambiente de banco de dados da tabela. Esse campo pode ser NULL. |
TABLE_SCHEM | sysname | Nome do proprietário da tabela ou exibição. Em SQL Server, essa coluna representa o nome do usuário do banco de dados que criou a tabela. Esse campo sempre retorna um valor. |
TABLE_NAME | sysname | Nome da tabela ou exibição. Esse campo sempre retorna um valor. |
COLUMN_NAME | sysname | Nome da coluna, para cada coluna do TABLE_NAME retornado. Esse campo sempre retorna um valor. |
DATA_TYPE | smallint | Valor inteiro que corresponde aos indicadores de tipo ODBC. Se for um tipo de dados que não pode ser mapeado para um tipo ODBC, este valor será NULL. O nome do tipo de dados nativo é retornado na coluna TYPE_NAME . |
TYPE_NAME | varchar(13) | Cadeia de caracteres que representa um tipo de dados. O DBMS subjacente apresenta este nome de tipo de dados. |
COLUMN_SIZE | int | Número de dígitos significativos. O valor retornado para a coluna PRECISION está na base 10. |
BUFFER_LENGTH | int | Tamanho da 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 possibilidade de nulidade: 1 = NULL é possível. 0 = NOT NULL. |
COMENTÁRIOS | varchar(254) | Esse campo sempre retorna NULL. |
COLUMN_DEF | varchar(254) | Valor padrão da coluna. |
SQL_DATA_TYPE | smallint | Valor do tipo de dados SQL conforme exibido no campo TYPE do descritor. Essa coluna é igual à coluna DATA_TYPE , exceto para os tipos de dados datetime e SQL-92 interval . Esta coluna sempre retorna um valor. |
SQL_DATETIME_SUB | smallint | Código de subtipo para tipos de dados de intervalo datetime e SQL-92. Para outros tipos de dados, esta coluna retorna NULL. |
CHAR_OCTET_LENGTH | int | Comprimento máximo em bytes de uma coluna do tipo de dados caractere ou inteiro. Para todos os outros tipos de dados, esta coluna retorna NULL. |
ORDINAL_POSITION | int | Posição ordinal da coluna na tabela. A primeira coluna na tabela é 1. Esta coluna sempre retorna um valor. |
IS_NULLABLE | varchar(254) | Possibilidade de nulidade da coluna na tabela. As regras ISO são seguidas para determinar a possibilidade de nulidade. Um DBMS em conformidade com ISO SQL não pode retornar uma cadeia de caracteres vazia. YES = A coluna pode incluir NULLS. NO = A coluna não pode incluir NULLS. Esta coluna retorna uma cadeia de caracteres de comprimento zero se a possibilidade de nulidade for desconhecida. O valor retornado para essa coluna é diferente do valor retornado para a coluna NULLABLE . |
SS_DATA_TYPE | tinyint | SQL Server tipo de dados, usado por procedimentos armazenados estendidos. |
Para obter mais informações, consulte a documentação do Microsoft ODBC.
Comentários
sp_columns_ex é executado consultando o conjunto de linhas COLUMNS da interface IDBSchemaRowset do provedor OLE DB correspondente a table_server. Os parâmetros table_name, table_schema, table_catalog e coluna são passados para essa interface para restringir as linhas retornadas.
sp_columns_ex retornará um conjunto de resultados vazio se o provedor OLE DB do servidor vinculado especificado não oferecer suporte ao conjunto de linhas COLUMNS da interface IDBSchemaRowset .
sp_columns_ex segue os requisitos para identificadores delimitados. Para obter mais informações, consulte Database Identifiers.
Permissões
Requer a permissão SELECT no esquema.
Exemplos
O exemplo a seguir retorna o tipo de dados da coluna JobTitle
da tabela HumanResources.Employee
no banco de dados AdventureWorks2022
do servidor vinculado Seattle1
.
EXEC sp_columns_ex 'Seattle1',
'Employee',
'HumanResources',
'AdventureWorks2022',
'JobTitle';
Consulte Também
sp_catalogs (Transact-SQL)
sp_foreignkeys (Transact-SQL)
sp_indexes (Transact-SQL)
sp_linkedservers (Transact-SQL)
sp_primarykeys (Transact-SQL)
sp_tables_ex (Transact-SQL)
sp_table_privileges (Transact-SQL)
Procedimentos armazenados do sistema (Transact-SQL)
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de