云数据库 GaussDB-动态调用存储过程:示例

时间:2025-02-12 15:08:27

示例

 1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930
--创建存储过程proc_add。openGauss=# CREATE OR REPLACE PROCEDURE proc_add(    param1    in   INTEGER,    param2    out  INTEGER,    param3    in   INTEGER)ASBEGIN   param2:= param1 + param3;END;/openGauss=# DECLARE    input1 INTEGER:=1;    input2 INTEGER:=2;    statement  VARCHAR2(200);    param2     INTEGER;BEGIN   --声明调用语句    statement := 'call proc_add(:col_1, :col_2, :col_3)';    --执行语句    EXECUTE IMMEDIATE statement        USING IN input1, OUT param2, IN input2;    dbe_output.print_line('result is: '||to_char(param2));END;/--删除存储过程openGauss=# DROP PROCEDURE proc_add;
support.huaweicloud.com/centralized-devg-v2-gaussdb/gaussdb_42_0573.html