Sql 创建postgres存储过程的问题| postgres 12

Sql 创建postgres存储过程的问题| postgres 12,sql,postgresql,plpgsql,Sql,Postgresql,Plpgsql,我对博士后有点陌生,所以这次我需要你的帮助 postgres=# select version(); version ------------------------------------------------------------ PostgreSQL 12.3, compiled by Visual C++ build 1914, 64-bit (1 row) 据我所知,Postgres版本10以上,支持程序方法。但当我执行代码

我对博士后有点陌生,所以这次我需要你的帮助

postgres=# select version();
                          version
------------------------------------------------------------
 PostgreSQL 12.3, compiled by Visual C++ build 1914, 64-bit
(1 row)

据我所知,Postgres版本10以上,支持程序方法。但当我执行代码时,它总是在第1行出错(在word过程中)

这里是我得到的错误:

ERROR:  syntax error at or near "PROCEDURE"
LINE 1: CREATE PROCEDURE test (INT,varchar(200))
               ^
SQL state: 42601
Character: 8

欢迎提供任何帮助

您报告正在使用Postgres 12.3。然而,报告的错误信息正是我在Postgres 10(或更早版本)中看到的:

小提琴

与Postgres 11一起推出。
我怀疑您连接到了错误的/不同的数据库

除此之外,你的例子可能只是一个例子。
COMMIT
与最后一个命令一样毫无意义。见:

,它是在
创建过程
命令之前缺少的另一个分号。(您可以显示问题中的另一个问题。)我也可以通过这种方式复制错误消息:


dbfiddle

您报告正在使用Postgres 12.3。然而,报告的错误信息正是我在Postgres 10(或更早版本)中看到的:

小提琴

与Postgres 11一起推出。
我怀疑您连接到了错误的/不同的数据库

除此之外,你的例子可能只是一个例子。
COMMIT
与最后一个命令一样毫无意义。见:

,它是在
创建过程
命令之前缺少的另一个分号。(您可以显示问题中的另一个问题。)我也可以通过这种方式复制错误消息:


DBFIDLE

完整的错误信息是什么?我无法复制。请(通过单击下面的链接)添加您的问题,并添加您收到的完整错误消息(您的问题不会将其他信息放入注释中)用分号(
)终止
创建表
语句:
。。。限值5。如果还有更多问题,请返回完整的错误消息。我已经添加了分号,但仍然有相同的问题。我在上面添加了一些细节,希望你能帮助我。谢谢。你一定还有别的事没告诉我们。顺便说一句:你应该给出你的参数名。完整的错误信息是什么?我无法复制。请(通过单击下面的链接)添加您的问题,并添加您收到的完整错误消息(您的问题不会将其他信息放入注释中)用分号(
)终止
创建表
语句:
。。。限值5。如果还有更多问题,请返回完整的错误消息。我已经添加了分号,但仍然有相同的问题。我在上面添加了一些细节,希望你能帮助我。谢谢。你一定还有别的事没告诉我们。顺便说一句:你应该给出你的参数名。
ERROR:  syntax error at or near "PROCEDURE"
LINE 1: CREATE PROCEDURE test (INT,varchar(200))
               ^
SQL state: 42601
Character: 8
ERROR:  syntax error at or near "PROCEDURE"
LINE 1: CREATE PROCEDURE test (INT,varchar(200))