Documentation Home
MySQL 8.3 Reference Manual
Related Documentation Download this Manual
PDF (US Ltr) - 40.8Mb
PDF (A4) - 40.9Mb
Man Pages (TGZ) - 294.0Kb
Man Pages (Zip) - 409.0Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb
Excerpts from this Manual

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

28.3.30 信息架构 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

  • 安全类型

    该例程的 SQL 安全 特征。该值是 DEFINERINVOKER 之一。

  • 创建时间

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

  • 最后修改时间

    该例程最后修改的日期和时间。这是一个 TIMESTAMP 值。如果该例程自创建以来未被修改,则该值与 创建时间 值相同。

  • 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 权限在该例程的作用域内。如果您只有 CREATE ROUTINEALTER ROUTINEEXECUTE 权限,则 ROUTINE_DEFINITION 列为空。

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