ROUTINES

Importante

Esta característica está en versión preliminar pública.

se aplica a:casilla marcada como sí Databricks SQL casilla marcada como Sí Databricks Runtime 11.3 LTS y versiones posteriores solo casilla marcada como Sí Unity Catalog

INFORMATION_SCHEMA.ROUTINES enumera las rutinas (funciones) dentro del catálogo.

Las filas devueltas se limitan a las rutinas con las que el usuario tiene privilegios para interactuar.

Definición

La relación ROUTINES contiene las columnas siguientes:

Nombre Tipo de datos Nullable Estándar Descripción
SPECIFIC_CATALOG STRING No Catálogo que contiene la rutina.
SPECIFIC_SCHEMA STRING No Base de datos (esquema) que contiene la rutina.
SPECIFIC_NAME STRING No Nombre único (específico) del esquema de la rutina.
ROUTINE_CATALOG STRING No Coincide con SPECIFIC_CATALOG.
ROUTINE_SCHEMA STRING No Coincide con SPECIFIC_SCHEMA.
ROUTINE_NAME STRING No Nombre de la rutina.
ROUTINE_TYPE STRING No Siempre 'FUNCTION'. Reservado para uso futuro.
DATA_TYPE STRING No Nombre del tipo de datos de resultado o 'TABLE' para una función con valores de tabla.
FULL_DATA_TYPE STRING No No Definición del tipo de datos de resultado, por ejemplo 'DECIMAL(10, 4)'.
CHARACTER_MAXIMUM_LENGTH INTEGER NULL siempre está reservado para su uso futuro.
CHARACTER_OCTET_LENGTH STRING NULL siempre está reservado para su uso futuro.
NUMERIC_PRECISION INTEGER Para los tipos numéricos enteros de base 2, FLOAT, y DOUBLE, el número de bits admitidos. Para DECIMAL el número de dígitos, en caso contrario, NULL.
NUMERIC_PRECISION_RADIX INTEGER Para 10, DECIMAL, en el caso de los demás tipos numéricos 2, en caso contrario, NULL.
NUMERIC_SCALE INTEGER En el caso de los tipos numéricos enteros 0, en DECIMAL el número de dígitos situados a la derecha del separador decimal, NULL en caso contrario.
DATETIME_PRECISION INTEGER Para DATE 0, para TIMESTAMP y INTERVAL ... SECOND 3, cualquier otro INTERVAL 0, de lo contrario, NULL.
INTERVAL_TYPE STRING Para INTERVAL la parte unitaria del intervalo, por ejemplo, 'YEAR TO MONTH', de lo contrario NULL.
INTERVAL_PRECISION INTERAL NULL siempre está reservado para su uso futuro.
MAXIMUM_CARDINALITY INTEGER NULL siempre está reservado para su uso futuro.
ROUTINE_BODY STRING No 'SQL' o 'PYTHON'.
ROUTINE_DEFINITION STRING Definición completa de la rutina. NULL si el usuario no es el propietario.
EXTERNAL_NAME STRING NULL siempre está reservado para su uso futuro.
EXTERNAL_LANGUAGE STRING NULL siempre está reservado para su uso futuro.
PARAMETER_STYLE STRING 'SQL', reservado para uso futuro.
IS_DETERMINISTIC STRING No 'YES' si la rutina se define como determinista; de lo contrario, es 'NO'.
SQL_DATA_ACCESS STRING No 'READS SQL DATA' si la rutina lee de una relación; de lo contrario, es 'CONSTAINS SQL'.
IS_NULL_CALL STRING 'YES' siempre está reservado para su uso futuro.
SQL_PATH STRING NULL siempre está reservado para su uso futuro.
SECURITY_TYPE STRING No 'DEFINER' siempre está reservado para su uso futuro.
AS_LOCATOR STRING No 'NO' siempre está reservado para su uso futuro.
COMMENT STRING No Comentario opcional que describe la rutina.
CREATED TIMESTAMP No No Marca de tiempo en la que se creó la rutina.
CREATED_BY STRING No No Entidad de seguridad que creó la relación.
LAST_ALTERED TIMESTAMP No No Marca de tiempo que indica cuándo se modificó por última vez de cualquier manera la definición de la rutina.
LAST_ALTERED_BY STRING No No Entidad de seguridad que modificó la rutina por última vez.

Restricciones

Se aplican las restricciones siguientes a la relación ROUTINES:

Clase Nombre Lista de columnas Descripción
Clave principal ROUTINES_PK SPECIFIC_CATALOG, SPECIFIC_SCHEMA, SPECIFIC_NAME Identifica de forma única la rutina.
Clave externa ROUTINES_SCHEMATA_FK SPECIFIC_CATALOG, SPECIFIC_SCHEMA Referencias SCHEMATA

Ejemplos

> SELECT routine_name, routine_definition
    FROM information_schema.routines
    WHERE specific_schema = 'default'
    ORDER BY routine_name;