Partilhar via


sp_sproc_columns (Transact-SQL)

Aplica-se a:SQL ServerBase de Dados SQL do AzureInstância Gerida do Azure SQLAzure Synapse AnalyticsSistema de Plataforma de Análise (PDW)Ponto de Extremidade de Análise SQL no Microsoft FabricArmazém no Microsoft FabricBase de Dados SQL no Microsoft Fabric

Devolve informação de coluna para um único procedimento armazenado ou função definida pelo utilizador no ambiente atual.

Transact-SQL convenções de sintaxe

Sintaxe

sp_sproc_columns
    [ [ @procedure_name = ] N'procedure_name' ]
    [ , [ @procedure_owner = ] N'procedure_owner' ]
    [ , [ @procedure_qualifier = ] N'procedure_qualifier' ]
    [ , [ @column_name = ] N'column_name' ]
    [ , [ @ODBCVer = ] ODBCVer ]
    [ , [ @fUsePattern = ] fUsePattern ]
[ ; ]

Arguments

[ @procedure_name = ] N'procedure_name'

O nome do procedimento utilizado para devolver a informação do catálogo. @procedure_name é nvarchar(390), com um padrão de %, o que significa todas as tabelas da base de dados atual. É suportada a correspondência de padrões wildcard.

[ @procedure_owner = ] N'procedure_owner'

O nome do proprietário do procedimento. @procedure_owner é nvarchar(384), com um padrão de NULL. É suportada a correspondência de padrões wildcard. Se @procedure_owner não for especificado, aplicam-se as regras padrão de visibilidade de procedimentos do sistema de gestão de bases de dados (SGBD) subjacente.

Se o utilizador atual possuir um procedimento com o nome especificado, a informação sobre esse procedimento é devolvida. Se @procedure_owner não for especificado e o utilizador atual não possuir um procedimento com o nome especificado, sp_sproc_columns procure um procedimento com o nome especificado que pertence ao dono da base de dados. Se o procedimento existir, a informação sobre as suas colunas é devolvida.

[ @procedure_qualifier = ] N'procedure_qualifier'

O nome do qualificador do procedimento. @procedure_qualifier é sysname, com um padrão de NULL. Vários produtos SGBD suportam a nomenclatura em três partes para tabelas (<qualifier>.<owner>.<name>). No SQL Server, este parâmetro representa o nome da base de dados. Em alguns produtos, representa o nome do servidor do ambiente de base de dados da tabela.

[ @column_name = ] N'column_name'

Uma única coluna e é usada quando se deseja apenas uma coluna de informação do catálogo. @column_name é nvarchar(384), com um padrão de NULL. Se @column_name for omitido, todas as colunas são devolvidas. É suportada a correspondência de padrões wildcard. Para máxima interoperabilidade, o cliente gateway deve assumir apenas correspondência de padrões ISO padrão (os caracteres coringa % e _).

[ @ODBCVer = ] ODBCVer

A versão do ODBC que está a ser usada. @ODBCVer é int, com um padrão de 2, que indica a versão 2.0 do ODBC. Para mais informações sobre as diferenças entre a versão 2.0 e a versão 3.0 do ODBC, consulte a especificação do ODBC SQLProcedureColumns para a versão 3.0 do ODBC.

[ @fUsePattern = ] fUsePattern

Determina se os caracteres subjacentes (_), percent (%) e parênteses ([ e ]) são interpretados como caracteres curinga. @fUsePattern é bit, com um padrão de 1. Os valores válidos são 0 (a correspondência de padrões está desligada) e 1 (a correspondência de padrões está ativada).

Valores de código de retorno

Nenhum.

Conjunto de resultados

Nome da coluna Tipo de dados Description
PROCEDURE_QUALIFIER sysname Nome do qualificador do procedimento. Esta coluna pode ser NULL.
PROCEDURE_OWNER sysname Nome do proprietário do procedimento. Esta coluna devolve sempre um valor.
PROCEDURE_NAME nvarchar (134) Nome do procedimento. Esta coluna devolve sempre um valor.
COLUMN_NAME sysname Nome da coluna para cada coluna do TABLE_NAME devolvido. Esta coluna devolve sempre um valor.
COLUMN_TYPE smallint Este campo devolve sempre um valor:

0 = SQL_PARAM_TYPE_UNKNOWN
1 = SQL_PARAM_TYPE_INPUT
2 = SQL_PARAM_TYPE_OUTPUT
3 = SQL_RESULT_COL
4 = SQL_PARAM_OUTPUT
5 = SQL_RETURN_VALUE
DATA_TYPE smallint Código inteiro para um tipo de dado ODBC. Se este tipo de dados não puder ser mapeado para um tipo ISO, o valor é NULL. O nome do tipo de dado nativo é devolvido na TYPE_NAME coluna.
TYPE_NAME sysname Representação em cadeia do tipo de dado. Este valor é o nome do tipo de dados apresentado pelo SGBD subjacente.
PRECISION int Número de dígitos significativos. O valor de retorno da PRECISION coluna está na base 10.
LENGTH int Tamanho de transferência dos dados.
SCALE smallint Número de dígitos à direita da vírgula decimal.
RADIX smallint A base para tipos numéricos.
NULLABLE smallint Especifica a nulidade:

1 = O tipo de dado pode ser criado permitindo valores nulos.
0 = Valores nulos não são permitidos.
REMARKS Varchar (254) Descrição da coluna de procedimentos. O SQL Server não devolve um valor para esta coluna.
COLUMN_DEF Nvarchar(4000) 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 ISO. Esta coluna devolve sempre um valor.
SQL_DATETIME_SUB smallint O subcódigo do intervaloISO de data-hora se o valor de SQL_DATA_TYPE for SQL_DATETIME ou SQL_INTERVAL. Para tipos de dados que não sejam data-hora e intervalo ISO, este campo é NULL.
CHAR_OCTET_LENGTH int Comprimento máximo em bytes de uma coluna de caracteres ou tipo de dado binário . Para todos os outros tipos de dados, esta coluna retorna um 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 não pode devolver uma cadeia vazia.

Mostra YES se a coluna pode incluir nulos, e NO se a coluna não pode incluir nulos.

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 Tipos de Dados (Transact-SQL).

Observações

sp_sproc_columns é equivalente a SQLProcedureColumns em ODBC. Os resultados devolvidos estão ordenados por PROCEDURE_QUALIFIER, PROCEDURE_OWNER, PROCEDURE_NAME, e pela ordem em que os parâmetros aparecem na definição do procedimento.

Permissions

Requer SELECT permissão no esquema.