调用语句

语法

调用一个语句的语法请参见图1。

图 1 call_clause::= 调用语句 - 图1

对以上语法格式的解释如下:

  • procedure_name:存储过程名。
  • parameter:存储过程的参数,可以没有或者有多个参数。

示例

1. --创建存储过程proc_staffs
2. openGauss=# CREATE OR REPLACE PROCEDURE proc_staffs
3. (
4. section     NUMBER(6),
5. salary_sum out NUMBER(8,2),
6. staffs_count out INTEGER
7. )
8. IS
9. BEGIN
10. SELECT sum(salary), count(*) INTO salary_sum, staffs_count FROM hr.staffs where section_id = section;
11. END;
12. /

14. --调用存储过程proc_return.
15. openGauss=# CALL proc_staffs(2,8,6);

17. --清除存储过程
18. openGauss=# DROP PROCEDURE proc_staffs;