创建存储过程

用于定义新存储过程的SQL命令

CREATE PROCEDURE 是用于定义新存储过程的DDL命令。

CREATE PROCEDURE 添加于 PostgreSQL 11

更改历史记录

示例

CREATE PROCEDURE 的基本用法示例

postgres=# CREATE PROCEDURE foo() LANGUAGE SQL AS 'SELECT pg_reload_conf()';
CREATE PROCEDURE

postgres=# CALL foo();
CALL

无法创建与现有函数具有相同名称和参数的存储过程

postgres=# CREATE PROCEDURE foo(int) LANGUAGE SQL AS 'SELECT 1';
ERROR:  function "foo" already exists with same argument types

可以创建名称相同但参数类型不同的函数和存储过程

postgres=# \df
                       List of functions
 Schema | Name | Result data type | Argument data types | Type
--------+------+------------------+---------------------+------
 public | foo  |                  |                     | proc
 public | foo  | integer          | integer             | func
(2 rows)

可以创建和调用空存储过程

postgres=# CREATE PROCEDURE emptyproc() LANGUAGE SQL AS '';
CREATE PROCEDURE

postgres=# CALL emptyproc();
CALL

分类

DDL函数和存储过程SQL命令

另请参阅

ALTER PROCEDUREDROP PROCEDURECALLCREATE FUNCTION

反馈

提交关于"CREATE PROCEDURE"的任何评论、建议或更正 此处