ROUTINES (Transact-SQL)

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceAzure Synapse AnalyticsAnalytics Platform System (PDW)Punto de conexión de análisis SQL en Microsoft FabricAlmacenamiento en Microsoft Fabric

Devuelve una fila por cada procedimiento almacenado y función a los que puede tener acceso el usuario actual en la base de datos actual. Las columnas que describen el valor devuelto solo se aplican a funciones. Para procedimientos almacenados, estas columnas serán NULL.

Para recuperar información de estas vistas, especifique el nombre completo de INFORMATION_SCHEMA.view_name.

Nota:

La columna ROUTINE_DEFINITION contiene las instrucciones de origen que crearon la función o el procedimiento almacenado. Estas instrucciones de origen sirven, probablemente, para contener los retornos de carro incrustados. Si devuelve esta columna a una aplicación que muestra los resultados en formato de texto, los retornos de carro incrustados en los resultados de ROUTINE_DEFINITION pueden afectar al formato del conjunto de resultados general. Si selecciona la columna ROUTINE_DEFINITION, debe tener en cuenta los retornos de carro incrustados; por ejemplo, devolviendo el conjunto de resultados en una cuadrícula o devolviendo ROUTINE_DEFINITION a su propio cuadro de texto.

Nombre de la columna Tipo de datos Descripción
SPECIFIC_CATALOG nvarchar(128) Nombre específico del catálogo. Este nombre es el mismo que ROUTINE_CATALOG.
SPECIFIC_SCHEMA nvarchar(128) Nombre específico del esquema.

** Importante ** No use INFORMATION_SCHEMA vistas para determinar el esquema de un objeto. Estas vistas solo representan un subconjunto de los metadatos de un objeto. La única manera confiable de encontrar el esquema de un objeto es consultar la vista de catálogo sys.objects.
SPECIFIC_NAME nvarchar(128) Nombre específico del catálogo. Este nombre es el mismo que ROUTINE_NAME.
ROUTINE_CATALOG nvarchar(128) Nombre del catálogo de la función.
ROUTINE_SCHEMA nvarchar(128) Nombre del esquema que contiene esta función.

** Importante ** No use INFORMATION_SCHEMA vistas para determinar el esquema de un objeto. Estas vistas solo representan un subconjunto de los metadatos de un objeto. La única manera confiable de encontrar el esquema de un objeto es consultar la vista de catálogo sys.objects.
ROUTINE_NAME nvarchar(128) El nombre de la función.
ROUTINE_TYPE nvarchar(20) Devuelve PROCEDURE para los procedimientos almacenados y FUNCTION para las funciones.
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 datos del valor devuelto de la función. Devuelve la tabla si una función con valores de tabla.
CHARACTER_MAXIMUM_LENGTH int Longitud máxima en caracteres, si el tipo devuelto es un tipo de caracteres.

-1 para los datos xml y de tipo de valor grande.
CHARACTER_OCTET_LENGTH int Longitud máxima en bytes, si el tipo devuelto es un tipo de caracteres.

-1 para los datos xml y de tipo de valor grande.
COLLATION_CATALOG nvarchar(128) Siempre devuelve NULL.
COLLATION_SCHEMA nvarchar(128) Siempre devuelve NULL.
COLLATION_NAME nvarchar(128) Nombre de la intercalación del valor devuelto. Para tipos que no son de caracteres devuelve NULL.
CHARACTER_SET_CATALOG nvarchar(128) Siempre devuelve NULL.
CHARACTER_SET_SCHEMA nvarchar(128) Siempre devuelve NULL.
CHARACTER_SET_NAME nvarchar(128) Nombre del juego de caracteres del valor devuelto. Para tipos que no son de caracteres devuelve NULL.
NUMERIC_PRECISION smallint Precisión numérica del valor devuelto. Para los tipos no numéricos, devuelve NULL.
NUMERIC_PRECISION_RADIX smallint Base de la precisión numérica del valor devuelto. Para tipos que no son numéricos, devuelve NULL.
NUMERIC_SCALE smallint Escala del valor devuelto. Para tipos que no son numéricos, devuelve NULL.
DATETIME_PRECISION smallint Precisión fraccionaria de un segundo si el valor devuelto es de tipo datetime. De lo contrario, devuelve 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) Devuelve SQL para una función Transact-SQL y EXTERNAL para una función escrita externamente.

Las funciones son siempre SQL.
ROUTINE_DEFINITION nvarchar(4000) Devuelve los primeros 4000 caracteres del texto de definición de la función o del procedimiento almacenado, si la función o el procedimiento almacenado no están cifrados. De lo contrario, devuelve NULL.

Para asegurarse de obtener la definición completa, consulte la función OBJECT_DEFINITION o la columna de definición en la vista de catálogo de 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) Devuelve YES si la rutina es determinista.

Devuelve NO si la rutina no es determinista.

Siempre devuelve NO para procedimientos almacenados.
SQL_DATA_ACCESS nvarchar(30) Devuelve uno de los valores siguientes:

NONE = la función no contiene SQL.

CONTAINS = la función posiblemente contenga SQL.

READS = la función posiblemente lea datos SQL.

MODIFIES = la función posiblemente modifique datos SQL.

Devuelve READS para todas las funciones y MODIFIES para todos los procedimientos almacenados.
IS_NULL_CALL nvarchar(10) Indica si se llamará a la rutina si alguno de sus argumentos es NULL.
SQL_PATH nvarchar(128) NULL. Reservado para uso futuro.
SCHEMA_LEVEL_ROUTINE nvarchar(10) Devuelve YES si es una función de nivel de esquema o NO si no lo es.

Siempre devuelve YES.
MAX_DYNAMIC_RESULT_SETS smallint Número máximo de conjuntos de resultados dinámicos devueltos por la rutina.

Devuelve 0 si funciona.
IS_USER_DEFINED_CAST nvarchar(10) Devuelve YES si es una función de conversión definida por el usuario y NO si no lo es.

Siempre devuelve NO.
IS_IMPLICITLY_INVOCABLE nvarchar(10) Devuelve YES si la rutina se puede invocar implícitamente y NO si no se puede.

Siempre devuelve NO.
CREATED datetime Hora a la que se creó la rutina.
LAST_ALTERED datetime La última vez que se modificó la función.

Consulte también

Vistas del sistema (Transact-SQL)
Vistas de esquema de información (Transact-SQL)
sys.columns (Transact-SQL)
sys.objects (Transact-SQL)
sys.procedures (Transact-SQL)
sys.sql_modules (Transact-SQL)