ROUTINES (Transact-SQL)
Retorna uma linha para cada procedimento armazenado e função que pode ser acessada pelo usuário atual no banco de dados atual. As colunas que descrevem o valor de retorno se aplicam somente a funções. Para procedimentos armazenados, estas colunas terão valor NULL.
Para recuperar informações dessas exibições, especifique o nome totalmente qualificado de INFORMATION_SCHEMA.view_name.
Observação |
---|
A coluna ROUTINE_DEFINITION contém as instruções originais que criaram a função ou o procedimento armazenado. Estas instruções originais provavelmente conterão retornos de carro incorporados. Se você estiver retornando esta coluna a um aplicativo que exibe os resultados em formato de texto, os retornos de carro embutidos nos resultados de ROUTINE_DEFINITION poderão afetar a formatação do conjunto de resultados geral. Se você selecionar a coluna de ROUTINE_DEFINITION, deverá ajustar os retornos de carro embutidos, por exemplo, retornando o conjunto de resultados em uma grade ou retornando ROUTINE_DEFINITION em sua própria caixa de texto. |
Nome da coluna |
Tipo de dados |
Descrição |
---|---|---|
SPECIFIC_CATALOG |
nvarchar(128) |
Nome específico do catálogo. Este nome é igual a ROUTINE_CATALOG. |
SPECIFIC_SCHEMA |
nvarchar(128) |
Nome específico do esquema.
Importante
Não use exibições INFORMATION_SCHEMA para determinar o esquema de um objeto. O único modo seguro de localizar o esquema de um objeto é consultar a exibição do catálogo ou a função OBJECT_SCHEMA_NAME.
|
SPECIFIC_NAME |
nvarchar(128) |
Nome específico do catálogo. Esse nome é igual a ROUTINE_NAME. |
ROUTINE_CATALOG |
nvarchar(128) |
Nome de catálogo da função. |
ROUTINE_SCHEMA |
nvarchar(128) |
Nome do esquema que contém esta função.
Importante
Não use exibições INFORMATION_SCHEMA para determinar o esquema de um objeto. O único modo seguro de localizar o esquema de um objeto é consultar a exibição do catálogo sys.objects ou a função OBJECT_SCHEMA_NAME.
|
ROUTINE_NAME |
nvarchar(128) |
Nome da função. |
ROUTINE_TYPE |
nvarchar(20) |
Retorna PROCEDURE para procedimentos armazenados e FUNCTION para funções. |
MODULE_CATALOG |
nvarchar(128) |
NULL. Reservado para uso futuro. |
MODULE_SCHEMA |
nvarchar(128) |
NULL. Reservado para uso futuro. |
MODULE_NAME |
nvarchar(128) |
NULL. Reservado para uso futuro. |
UDT_CATALOG |
nvarchar(128) |
NULL. Reservado para uso futuro. |
UDT_SCHEMA |
nvarchar(128) |
NULL. Reservado para uso futuro. |
UDT_NAME |
nvarchar(128) |
NULL. Reservado para uso futuro. |
DATA_TYPE |
nvarchar(128) |
Tipo de dado do valor de retorno da função. Retorna table no caso de valor de tabela. |
CHARACTER_MAXIMUM_LENGTH |
int |
Comprimento máximo em caracteres se o tipo de retorno for um tipo de caractere. -1 para xml e dados do tipo de valor grande. |
CHARACTER_OCTET_LENGTH |
int |
Comprimento máximo em bytes se o tipo de retorno for um tipo de caractere. -1 para xml e dados do tipo de valor grande. |
COLLATION_CATALOG |
nvarchar(128) |
Sempre retorna NULL. |
COLLATION_SCHEMA |
nvarchar(128) |
Sempre retorna NULL. |
COLLATION_NAME |
nvarchar(128) |
Nome do agrupamento do valor de retorno. Para tipos não caractere, retorna NULL. |
CHARACTER_SET_CATALOG |
nvarchar(128) |
Sempre retorna NULL. |
CHARACTER_SET_SCHEMA |
nvarchar(128) |
Sempre retorna NULL. |
CHARACTER_SET_NAME |
nvarchar(128) |
O nome do conjunto de caracteres do valor de retorno. Para tipos não-caractere, retorna NULL. |
NUMERIC_PRECISION |
smallint |
Precisão numérica do valor de retorno. Para os tipos não numéricos, retorna o NULL. |
NUMERIC_PRECISION_RADIX |
smallint |
Precisão numérica da base do valor de retorno. Para tipos não numéricos, retorna NULL. |
NUMERIC_SCALE |
smallint |
Escala do valor de retorno. Para tipos não numéricos, retorna NULL. |
DATETIME_PRECISION |
smallint |
Precisão fracionária de um segundo, se o valor de retorno for do tipo datetime. Caso contrário, retorna NULL. |
INTERVAL_TYPE |
nvarchar(30) |
NULL. Reservado para uso futuro. |
INTERVAL_PRECISION |
smallint |
NULL. Reservado para uso futuro. |
TYPE_UDT_CATALOG |
nvarchar(128) |
NULL. Reservado para uso futuro. |
TYPE_UDT_SCHEMA |
nvarchar(128) |
NULL. Reservado para uso futuro. |
TYPE_UDT_NAME |
nvarchar(128) |
NULL. Reservado para uso futuro. |
SCOPE_CATALOG |
nvarchar(128) |
NULL. Reservado para uso futuro. |
SCOPE_SCHEMA |
nvarchar(128) |
NULL. Reservado para uso futuro. |
SCOPE_NAME |
nvarchar(128) |
NULL. Reservado para uso futuro. |
MAXIMUM_CARDINALITY |
bigint |
NULL. Reservado para uso futuro. |
DTD_IDENTIFIER |
nvarchar(128) |
NULL. Reservado para uso futuro. |
ROUTINE_BODY |
nvarchar(30) |
Retorna o SQL para uma função Transact-SQL e EXTERNAL para uma função escrita externamente. Funções sempre serão o SQL. |
ROUTINE_DEFINITION |
nvarchar(4000) |
Retorna os primeiros 4000 caracteres do texto de definição da função ou procedimento armazenado, se a função ou procedimento armazenado não for criptografado. Caso contrário, retorna NULL. Para garantir que você obtenha a definição completa, consulte a função OBJECT_DEFINITION ou a coluna de definição na exibição do catálogo sys.sql_modules. |
EXTERNAL_NAME |
nvarchar(128) |
NULL. Reservado para uso futuro. |
EXTERNAL_LANGUAGE |
nvarchar(30) |
NULL. Reservado para uso futuro. |
PARAMETER_STYLE |
nvarchar(30) |
NULL. Reservado para uso futuro. |
IS_DETERMINISTIC |
nvarchar(10) |
Retornará YES se a rotina for determinística. Retornará NO se a rotina não for determinística. Sempre retorna NO para procedimentos armazenados. |
SQL_DATA_ACCESS |
nvarchar(30) |
Retorna um dos seguintes valores: NONE = Função não contém SQL. CONTAINS = Função possivelmente contém SQL. READS = Função possivelmente lê dados SQL. MODIFIES = Função possivelmente modifica dados SQL. Retorna READS para todas as funções e MODIFIES para todos os procedimentos armazenados. |
IS_NULL_CALL |
nvarchar(10) |
Indica se a rotina será chamada se qualquer um de seus argumentos for NULL. |
SQL_PATH |
nvarchar(128) |
NULL. Reservado para uso futuro. |
SCHEMA_LEVEL_ROUTINE |
nvarchar(10) |
Retorna YES se for uma função de nível de esquema ou NO se não for uma função de nível de esquema. Sempre retorna YES. |
MAX_DYNAMIC_RESULT_SETS |
smallint |
Número máximo de conjuntos de resultados dinâmicos retornado por rotina. Retorna 0 em caso de funções. |
IS_USER_DEFINED_CAST |
nvarchar(10) |
Retorna YES em caso de função cast definida pelo usuário e NO se não for uma função cast definida pelo usuário. Sempre retorna NO. |
IS_IMPLICITLY_INVOCABLE |
nvarchar(10) |
Retorna YES se a rotina puder ser invocada implicitamente e NO se função não puder ser invocada implicitamente. Sempre retorna NO. |
CREATED |
datetime |
A hora em que a rotina foi criada. |
LAST_ALTERED |
datetime |
A última vez que a função foi modificada. |
Exemplos
O exemplo a seguir retorna informações sobre cada procedimento armazenado ou função definida pelo usuário no banco de dados.
USE AdventureWorks;
GO
SELECT ROUTINE_SCHEMA, ROUTINE_NAME, ROUTINE_TYPE,
ROUTINE_DEFINITION AS [First 4000 characters], CREATED, LAST_ALTERED
FROM INFORMATION_SCHEMA.ROUTINES
ORDER BY ROUTINE_TYPE;
Consulte também