ROUTINES
重要
此功能目前以公共预览版提供。
适用于: Databricks SQL Databricks Runtime 11.3 LTS 及更高版本 仅 Unity Catalog
INFORMATION_SCHEMA.ROUTINES 会列出目录中的例程(函数)。
返回的行仅限于用户有权与之交互的例程。
定义
ROUTINES
关系包含以下列:
名称 | 数据类型 | Nullable | 标准 | 描述 |
---|---|---|---|---|
SPECIFIC_CATALOG |
STRING |
否 | 是 | 包含例程的目录。 |
SPECIFIC_SCHEMA |
STRING |
否 | 是 | 包含例程的数据库(架构)。 |
SPECIFIC_NAME |
STRING |
否 | 是 | 例程架构唯一(特定)名称。 |
ROUTINE_CATALOG |
STRING |
否 | 是 | 匹配 SPECIFIC_CATALOG 。 |
ROUTINE_SCHEMA |
STRING |
否 | 是 | 匹配 SPECIFIC_SCHEMA 。 |
ROUTINE_NAME |
STRING |
否 | 是 | 例程的名称。 |
ROUTINE_TYPE |
STRING |
否 | 是 | 总是为 'FUNCTION' 。 保留供将来使用。 |
DATA_TYPE |
STRING |
否 | 是 | 结果数据类型名称,或表值函数的 'TABLE' 。 |
FULL_DATA_TYPE |
STRING |
否 | 否 | 结果数据类型定义,例如 'DECIMAL(10, 4)' 。 |
CHARACTER_MAXIMUM_LENGTH |
INTEGER |
是 | 是 | 始终为 NULL ,保留以供将来使用。 |
CHARACTER_OCTET_LENGTH |
STRING |
是 | 是 | 始终为 NULL ,保留以供将来使用。 |
NUMERIC_PRECISION |
INTEGER |
是 | 是 | 对于 base-2 整数类型、FLOAT 和 DOUBLE ,为支持的位数。 对于 DECIMAL ,为位数;否则为 NULL 。 |
NUMERIC_PRECISION_RADIX |
INTEGER |
是 | 是 | 对于 DECIMAL ,为 10;对于所有其他数字类型,为 2;否则为 NULL 。 |
NUMERIC_SCALE |
INTEGER |
是 | 是 | 对于整数类型,为 0;对于 DECIMAL ,为小数点右侧的位数;否则为 NULL 。 |
DATETIME_PRECISION |
INTEGER |
是 | 是 | 对于 DATE ,为 0;对于 TIMESTAMP 和 INTERVAL … SECOND ,为 3;对于其他任何 INTERVAL ,为 0;否则为 NULL 。 |
INTERVAL_TYPE |
STRING |
是 | 是 | 对于 INTERVAL ,为间隔的单位部分,例如 'YEAR TO MONTH' ;否则为 NULL 。 |
INTERVAL_PRECISION |
INTERAL |
是 | 是 | 始终为 NULL ,保留以供将来使用。 |
MAXIMUM_CARDINALITY |
INTEGER |
是 | 是 | 始终为 NULL ,保留以供将来使用。 |
ROUTINE_BODY |
STRING |
否 | 是 | 'SQL' 或 'PYTHON' 。 |
ROUTINE_DEFINITION |
STRING |
是 | 是 | 例程的完整定义。 如果用户不是所有者,则为 NULL 。 |
EXTERNAL_NAME |
STRING |
是 | 是 | 始终为 NULL ,保留以供将来使用。 |
EXTERNAL_LANGUAGE |
STRING |
是 | 是 | 始终为 NULL ,保留以供将来使用。 |
PARAMETER_STYLE |
STRING |
是 | 是 | 'SQL' ,保留供将来使用。 |
IS_DETERMINISTIC |
STRING |
否 | 是 | 如果例程定义为具有确定性,则为 'YES' ,否则为 'NO' 。 |
SQL_DATA_ACCESS |
STRING |
否 | 是 | 如果例程从关系中读取数据,则为 'READS SQL DATA' ,否则为 'CONSTAINS SQL' 。 |
IS_NULL_CALL |
STRING |
是 | 是 | 始终为 'YES' ,保留以供将来使用。 |
SQL_PATH |
STRING |
是 | 是 | 始终为 NULL ,保留以供将来使用。 |
SECURITY_TYPE |
STRING |
否 | 是 | 始终为 'DEFINER' ,保留以供将来使用。 |
AS_LOCATOR |
STRING |
否 | 是 | 始终为 'NO' ,保留以供将来使用。 |
COMMENT |
STRING |
是 | 否 | 描述例程的可选注释。 |
CREATED |
TIMESTAMP |
否 | 否 | 创建例程的时间戳。 |
CREATED_BY |
STRING |
否 | 否 | 创建例程的主体。 |
LAST_ALTERED |
TIMESTAMP |
否 | 否 | 上次以任何方式更改例程定义时的时间戳。 |
LAST_ALTERED_BY |
STRING |
否 | 否 | 上次更改例程的主体。 |
约束
以下约束适用于 ROUTINES
关系:
类 | 名称 | 列列表 | 描述 |
---|---|---|---|
主密钥 | ROUTINES_PK |
SPECIFIC_CATALOG ,SPECIFIC_SCHEMA ,SPECIFIC_NAME |
唯一标识例程。 |
外键 | ROUTINES_SCHEMATA_FK |
SPECIFIC_CATALOG ,SPECIFIC_SCHEMA |
引用 SCHEMATA |
示例
> SELECT routine_name, routine_definition
FROM information_schema.routines
WHERE specific_schema = 'default'
ORDER BY routine_name;