云数据库 GaussDB-嵌套的子程序:语法格式

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

语法格式

  • 创建子存储过程语法格式:
    12345678
    PROCEDURE procedure_name [ (parameters) ]    [{IMMUTABLE  | STABLE  | VOLATILE }     | {CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT }]    { IS | AS }    [ declarations ]BEGIN    plsql_bodyEND;
  • 创建子函数语法:
    12345678
    FUNCTION function_name  [ (parameters) ] RETURN rettype         [{IMMUTABLE  | STABLE  | VOLATILE }     | {CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT }]    { IS | AS }    [ declarations ]BEGIN    plsql_bodyEND;

    在declarations部分可再定义下层的嵌套子程序。

  • 示例:
     1 2 3 4 5 6 7 8 910111213141516171819202122
    -- 创建一个存储过程CREATE OR REPLACE PROCEDURE proc_test() AS    -- 声明并定义一个子存储过程    PROCEDURE proc_sub() IS    BEGIN        dbe_output.put_line('this is subpragram');    END;BEGIN    dbe_output.put_line('this is a procedure');    -- 执行块内调用子存储过程     proc_sub();END;/-- 外部调用存储过程BEGIN    proc_test;END;/-- 输出结果this is a procedurethis is subpragramANONYMOUS BLOCK EXECUTE
support.huaweicloud.com/distributed-devg-v8-gaussdb/gaussdb-12-0771.html