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)
