跳到主要内容

SHOW CREATE FUNCTION

SHOW CREATE FUNCTION 语句用于显示已创建存储函数的信息。

SHOW CREATE FUNCTION 语句的语法如下:

SHOW CREATE FUNCTION func_name

要使用此语句,您必须是 DEFINER 所定义的用户,并具有 SHOW_ROUTINE 权限,具有全局级别的 SELECT 权限,或者对该例程具有 CREATE ROUTINEALTER ROUTINEEXECUTE 权限。如果只有 REATE ROUTINEALTER ROUTINEEXECUTE 权限,则 Create Procedure(创建过程)或 Create Function(创建函数)字段值显示为 NULL

SHOW CREATE FUNCTION 输出如下信息:

  • Function:存储函数名称。

  • sql_mode:执行存储函数时生效的 SQL 模式。

  • Create Function :定义存储函数的 CREATE FUNCTION 语句。

  • character_set_client:创建存储函数时 character_set_client 系统变量在当前会话的值。

  • collation_connection:创建存储函数时 collation_connection 系统变量在当前会话的值。

  • Database Collation:与存储函数相关联的数据库的排序规则。

存储函数的信息也可从 INFORMATION_SCHEMA ROUTINES 表中获得。详细信息请参见 INFORMATION_SCHEMA PARAMETERS

SHOW CREATE FUNCTION 语句的示例如下:

SHOW CREATE FUNCTION my_func;
+----------+----------+-----------------+-----------------------+----------------------+--------------------+
| Function | sql_mode | Create Function | character_set_client | collation_connection | Database Collation |
+----------+----------+-----------------+-----------------------+----------------------+--------------------+
| my_func | STRICT_TRANS_TABLES,STRICT_ALL_TABLES,NO_ZERO_IN_DATE | CREATE FUNCTION `test`.`my_func`( `c1` char(20)) RETURNS char(50) RETURN CONCAT('Thank ',c1,'!') | utf8mb4 | utf8mb4_general_ci | utf8mb4_general_ci |
+----------+----------+-----------------+-----------------------+----------------------+--------------------+
1 row in set