文档首页
MySQL 8.4 参考手册
相关文档 下载本手册
PDF (US Ltr) - 39.9Mb
PDF (A4) - 40.0Mb
手册页 (TGZ) - 258.5Kb
手册页 (Zip) - 365.5Kb
信息 (Gzip) - 4.0Mb
信息 (Zip) - 4.0Mb


MySQL 8.4 参考手册  /  ...  /  INFORMATION_SCHEMA ROUTINES 表

28.3.30 INFORMATION_SCHEMA ROUTINES 表

ROUTINES 表提供有关存储例程(存储过程和存储函数)的信息。ROUTINES 表不包括内置(原生)函数或可加载函数。

ROUTINES 表包含以下列:

  • SPECIFIC_NAME

    例程的名称。

  • ROUTINE_CATALOG

    例程所属目录的名称。此值始终为 def

  • ROUTINE_SCHEMA

    例程所属模式(数据库)的名称。

  • ROUTINE_NAME

    例程的名称。

  • ROUTINE_TYPE

    存储过程为 PROCEDURE,存储函数为 FUNCTION

  • DATA_TYPE

    如果例程是存储函数,则为返回值数据类型。如果例程是存储过程,则此值为空。

    DATA_TYPE 值仅为类型名称,不包含其他信息。DTD_IDENTIFIER 值包含类型名称以及可能的其他信息,例如精度或长度。

  • CHARACTER_MAXIMUM_LENGTH

    对于存储函数字符串返回值,以字符为单位的最大长度。如果例程是存储过程,则此值为 NULL

  • CHARACTER_OCTET_LENGTH

    对于存储函数字符串返回值,以字节为单位的最大长度。如果例程是存储过程,则此值为 NULL

  • NUMERIC_PRECISION

    对于存储函数数值返回值,为数值精度。如果例程是存储过程,则此值为 NULL

  • NUMERIC_SCALE

    对于存储函数数值返回值,为数值刻度。如果例程是存储过程,则此值为 NULL

  • DATETIME_PRECISION

    对于存储函数时间返回值,为小数秒精度。如果例程是存储过程,则此值为 NULL

  • CHARACTER_SET_NAME

    对于存储函数字符字符串返回值,为字符集名称。如果例程是存储过程,则此值为 NULL

  • COLLATION_NAME

    对于存储函数字符字符串返回值,为排序规则名称。如果例程是存储过程,则此值为 NULL

  • DTD_IDENTIFIER

    如果例程是存储函数,则为返回值数据类型。如果例程是存储过程,则此值为空。

    DATA_TYPE 值仅为类型名称,不包含其他信息。DTD_IDENTIFIER 值包含类型名称以及可能的其他信息,例如精度或长度。

  • ROUTINE_BODY

    用于例程定义的语言。此值始终为 SQL

  • ROUTINE_DEFINITION

    例程执行的 SQL 语句的文本。

  • EXTERNAL_NAME

    此值始终为 NULL

  • EXTERNAL_LANGUAGE

    存储例程的语言。该值从 mysql.routines 数据字典表的 external_language 列中读取。

  • PARAMETER_STYLE

    此值始终为 SQL

  • IS_DETERMINISTIC

    YESNO,具体取决于例程是否使用 DETERMINISTIC 特性定义。

  • SQL_DATA_ACCESS

    例程的数据访问特性。该值为 CONTAINS SQLNO SQLREADS SQL DATAMODIFIES SQL DATA 之一。

  • SQL_PATH

    此值始终为 NULL

  • SECURITY_TYPE

    例程 SQL SECURITY 特性。该值为 DEFINERINVOKER 之一。

  • CREATED

    创建例程的日期和时间。这是一个 TIMESTAMP 值。

  • LAST_ALTERED

    上次修改例程的日期和时间。这是一个 TIMESTAMP 值。如果例程自创建以来未进行修改,则此值与 CREATED 值相同。

  • SQL_MODE

    创建或更改例程时生效的 SQL 模式,以及例程在其下执行的模式。有关允许的值,请参见 第 7.1.11 节“服务器 SQL 模式”

  • ROUTINE_COMMENT

    注释的文本(如果例程有注释)。如果没有,则此值为空。

  • DEFINER

    DEFINER 子句中命名的帐户(通常是创建例程的用户),格式为 'user_name'@'host_name'

  • CHARACTER_SET_CLIENT

    创建例程时 character_set_client 系统变量的会话值。

  • COLLATION_CONNECTION

    创建例程时 collation_connection 系统变量的会话值。

  • DATABASE_COLLATION

    与例程关联的数据库的排序规则。

注意

  • 要查看有关例程的信息,您必须是名为例程 DEFINER 的用户,拥有 SHOW_ROUTINE 权限,拥有全局级别的 SELECT 权限,或者拥有在包含该例程的作用域内授予的 CREATE ROUTINEALTER ROUTINEEXECUTE 权限。ROUTINE_DEFINITION 列在您只有 CREATE ROUTINEALTER ROUTINEEXECUTE 权限时为 NULL

  • 有关存储函数返回值的信息也可以在 PARAMETERS 表中找到。存储函数的返回值行可以标识为 ORDINAL_POSITION 值为 0 的行。