Postgresql
在 postgreSQL-10 中創建儲存過程時出錯
我無法讓我的第一個儲存過程工作,所以我從手冊中複製了這個範例:
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
我究竟做錯了什麼?
我在本地主機上執行數據庫,以管理員使用者身份執行。我自己安裝的。安裝過程順利完成,我可以創建表、函式、觸發器等。
正如評論中提到的,PostgreSQL-10 沒有儲存過程。早期版本也是如此。
解決方法替代方案:
- 升級到版本 11 或更高版本
- 使用函式
謝謝@Erwin Brandstetter 和@a_horse_with_no_name