最初のストアドプロシージャを機能させることができなかったため、この例をマニュアルからコピーしました。
CREATE PROCEDURE insert_data(a integer, b integer)
LANGUAGE SQL
AS $$
INSERT INTO tbl VALUES (a);
INSERT INTO tbl VALUES (b);
$$;
CALL insert_data(1, 2);
次のエラーメッセージが表示されます。
ERROR: syntax error at or near "PROCEDURE" LINE 1: CREATE PROCEDURE insert_data(a integer, b integer) ^ SQL state: 42601 Character: 8
何が悪いのですか?
Localhostでデータベースを実行していて、管理者ユーザーとして実行しています。自分でインストールしました。インストールプロセスはエラーなしで完了し、テーブル、関数、トリガーなどを作成できます。
コメントで述べたように、PostgreSQL-10にはストアドプロシージャがありません。以前のバージョンについても同様です。
代替策:
ありがとう、@ Erwin Brandstetterおよび@a_horse_with_no_name