CREATE PROC

功能描述

创建一个新的存储过程。

注意事项

  • 本章节只包含shark新增的语法,原openGauss的语法未做删除和修改。原openGauss的CREATE PROCEDURE语法请参考章节CREATE PROCEDURE
  • 新增支持通过CREATE PROC方式创建存储过程,功能和CREATE PROCEDURE方式保持一致。

语法格式

CREATE [ OR REPLACE ] { PROCEDURE | PROC } procedure_name
    [ ( {[ argname ] [ argmode ] argtype [ { DEFAULT | := | = } expression ]}[,...]) ]
   { IS | AS } plsql_body 
/

参数说明

  • PROC

    新增通过CREATE PROC方式创建存储过程,功能和CREATE PROCEDURE方式保持一致。

示例

create schema test_proc;
set current_schema to test_proc;

create procedure p1()
is
begin        
RAISE INFO 'call procedure: p1';
end;
/

create proc p2()
is
begin
RAISE INFO 'call procedure: p2';
end;
/

\df p1();
                                           List of functions
  Schema   | Name | Result data type | Argument data types |  Type  | fencedmode | propackage | prokind 
-----------+------+------------------+---------------------+--------+------------+------------+---------
 test_proc | p1   | void             |                     | normal | f          | f          | p
(1 row)

\df p2();
                                           List of functions
  Schema   | Name | Result data type | Argument data types |  Type  | fencedmode | propackage | prokind 
-----------+------+------------------+---------------------+--------+------------+------------+---------
 test_proc | p2   | void             |                     | normal | f          | f          | p
(1 row)

call test_proc.p1();
INFO:  call procedure: p1
 p1
----

(1 row)

call test_proc.p2();
INFO:  call procedure: p2
 p2
----

(1 row)

相关链接

CREATE PROCEDURE

意见反馈
编组 3备份
    openGauss 2025-09-10 07:42:30
    取消