CALL

    无。

    • schema

      函数或存储过程所在的模式名称。

    • 函数或存储过程所在的package名称。

    • func_name

      所调用函数或存储过程的名称。

    • param_expr

      参数列表可以用符号“:=”或者“=>”将参数名和参数值隔开,这种方法的好处是参数可以以任意顺序排列。若参数列表中仅出现参数值,则参数值的排列顺序必须和函数或存储过程定义时的相同。

      取值范围:已存在的函数参数名称或存储过程参数名称。

    1. openGauss=# CREATE FUNCTION func_add_sql(num1 integer, num2 integer) RETURN integer
    2. AS
    3. BEGIN
    4. END;
    5. /
    6. --按参数值传递。
    7. openGauss=# CALL func_add_sql(1, 3);
    8. --使用命名标记法传参。
    9. openGauss=# CALL func_add_sql(num1 => 1,num2 => 3);
    10. openGauss=# CALL func_add_sql(num2 := 2, num1 := 3);
    11. --删除函数。
    12. openGauss=# DROP FUNCTION func_add_sql;
    13. openGauss=# CREATE FUNCTION func_increment_sql(num1 IN integer, num2 IN integer, res OUT integer)
    14. AS
    15. BEGIN
    16. res := num1 + num2;
    17. END;
    18. /
    19. --出参传入常量。
    20. openGauss=# CALL func_increment_sql(1,2,1);
    21. openGauss=# DROP FUNCTION func_increment_sql;