Documentation Home
MySQL 8.4 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 39.8Mb
PDF (A4) - 39.9Mb
Man Pages (TGZ) - 257.9Kb
Man Pages (Zip) - 364.9Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 Reference Manual  /  ...  /  The INFORMATION_SCHEMA ROUTINES Table

28.3.30 INFORMATION_SCHEMA ROUTINES 表

ROUTINES 表提供关于存储程序(存储过程和存储函数)的信息。ROUTINES 表不包括内置(native)函数或可加载函数。

ROUTINES 表具有以下列:

  • SPECIFIC_NAME

    该程序的名称。

  • ROUTINE_CATALOG

    该程序所属的目录的名称。这一值总是def

  • ROUTINE_SCHEMA

    该程序所属的架构(数据库)的名称。

  • ROUTINE_NAME

    该程序的名称。

  • ROUTINE_TYPE

    PROCEDURE(存储过程),FUNCTION(存储函数).

  • DATA_TYPE

    如果该程序是存储函数,则返回值数据类型。如果该程序是存储过程,这一值为空。

    DATA_TYPE 值仅包含类型名称,而不包括其他信息。DTD_IDENTIFIER 值包含类型名称和可能的其他信息,如精度或长度。

  • CHARACTER_MAX_LENGTH

    存储函数字符串返回值的最大长度(字符)。如果该routine是一个存储过程,这个值为NULL.

  • CHARACTER_OCTET_LENGTH

    存储函数字符串返回值的最大长度(字节)。如果该routine是一个存储过程,这个值为NULL.

  • NUMERIC_PRECISION

    存储函数数字返回值的数值精度。如果该routine是一个存储过程,这个值为NULL.

  • NUMERIC_SCALE

    存储函数数字返回值的数值scale。如果该routine是一个存储过程,这个值为NULL.

  • DATETIME_PRECISION

    存储函数时间戳返回值的小数秒精度。如果该routine是一个存储过程,这个值为NULL.

  • CHARACTER_SET_NAME

    存储函数字符字符串返回值的字符集名称。如果该routine是一个存储过程,这个值为NULL.

  • COLLATION_NAME

    存储函数字符字符串返回值的排序规则名称。如果该routine是一个存储过程,这个值为NULL.

  • DTD_IDENTIFIER

    如果该routine是一个存储函数,则返回值数据类型。如果该routine是一个存储过程,这个值为空。

    数据类型值仅包含类型名称,不包括其他信息。DTD标识符值包含类型名称和可能的其他信息,如精度或长度。

  • ROUTINE_BODY

    存储程序定义使用的语言。这一值始终是SQL

  • ROUTINE_DEFINITION

    执行存储程序的 SQL 语句文本。

  • EXTERNAL_NAME

    这一个值始终是NULL

  • EXTERNAL_LANGUAGE

    存储程序的语言。该值来自 mysql.routines 数据字典表中的 external_language 列。

  • PARAMETER_STYLE

    这一个值始终是SQL

  • IS_DETERMINISTIC

    YES 或 NO,取决于存储程序是否定义了 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 模式,以及该存储程序执行时的模态。 permitted values, see Section 7.1.11, “Server SQL Modes”

  • ROUTINE_COMMENT

    该存储程序的注释文本,如果存在;否则为空。

  • DEFINER

    DEFINER子句中指定的账户(通常是创建该存储程序的用户),以'user_ name'@'host_name'格式。

  • CHARACTER_SET_CLIENT

    在创建该存储程序时的会话值character_set_client系统变量。

  • COLLATION_CONNECTION

    创建该routine时的会话值collation_connection系统变量。

  • DATABASE_COLLATION

    与该routine关联的数据库的排序规则。

  • 要查看关于一个routine的信息,您必须是该routine的定义者,拥有SHOW_ROUTINE特权,或者在全局级别拥有SELECT特权,或者在包含该routine的范围内拥有CREATE_ROUTINEALTER_ROUTINEEXECUTE特权。如果您只有CREATE_ROUTINEALTER_ROUTINEEXECUTE特权,ROUTINE_DEFINITION列将为NULL

  • 关于存储函数返回值的信息也可以在PARAMETERS表中找到。存储函数的返回值行可以通过ORDINAL_POSITION值为0来识别。