SHOW CREATE PROCEDURE

功能描述

它返回可用于重新创建命名存储过程的确切字符串。 类似的语句 SHOW CREATE FUNCTION 显示有关存储函数的信息。 要使用任一语句,您必须具有全局 SELECT 特权。

注意事项

sql_mode是查询时的会话值,b数据库在这里展示的是创建例程时绑定的sql_mode,opengauss这里展示的是会话的值,因为opengauss在创建例程时不会将例程与sql_mode绑定。

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

collation_connection 是 lc_collate 创建数据库时指定的值。

Database Collation 是 lc_collate 创建数据库时指定的值。

语法格式

  1. SHOW CREATE PROCEDURE proc_name

参数说明

  • proc_name

    存储过程名。

示例

  1. --创建存储过程
  2. openGauss=# create procedure test_procedure_test(int,int)
  3. openGauss-# SHIPPABLE IMMUTABLE
  4. openGauss-# as
  5. openGauss$# begin
  6. openGauss$# select $1 + $2;
  7. openGauss$# end;
  8. openGauss$# /
  9. CREATE PROCEDURE
  10. --查询存储过程创建语句
  11. openGauss=# show create procedure test_procedure_test;
  12. Procedure | Create Procedure | sql_mode | character_set_client | collation_connection | Database Collation
  13. ---------------------+-----------------------------------------------------------------+-------------------------------------+----------------------+----------------------+--------------------
  14. test_procedure_test | CREATE OR REPLACE PROCEDURE public.test_procedure_test(int,int)+| sql_mode_strict,sql_mode_full_group | UTF8 | en_US.UTF-8
  15. | en_US.UTF-8
  16. | IMMUTABLE SHIPPABLE +| | |
  17. |
  18. | AS DECLARE +| | |
  19. |
  20. | begin +| | |
  21. |
  22. | select $1 + $2; +| | |
  23. |
  24. | end; +| | |
  25. |
  26. | / +| | |
  27. |
  28. | | | |
  29. |
  30. (1 row)