実現したいこと
PostgreSQL で、WITH HOLD 句付きの CURSOR をお試し実行したい
発生している問題・分からないこと
下記のコードでエラーが発生します
なお、前提として、「KINTAI」テーブルが存在し、「EmpNo」カラムが存在するとします。
また、"CSR CURSOR WITH HOLD FOR" の代わりに "CSR CURSOR FOR"を使用すると、動作します
PL/pgSQL
1DO $$ 2DECLARE 3 CSR CURSOR WITH HOLD FOR 4 --CSR CURSOR FOR 5 SELECT * FROM KINTAI ; 6 CR RECORD; 7BEGIN 8 OPEN CSR; 9 LOOP 10 FETCH CSR INTO CR; 11 IF NOT FOUND THEN 12 EXIT; 13 END IF; 14 RAISE NOTICE '%', CR.EmpNo; 15 END LOOP; 16 CLOSE CSR; 17END 18$$ LANGUAGE plpgsql;
エラーメッセージ
error
1ERROR: "WITH" もしくはその近辺で 構文エラー 2行 3: CSR CURSOR WITH HOLD FOR 3 ^
該当のソースコード
特になし
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
下記の文書を確認しましたが、文法的には問題ないようです。
PostgreSQL文書
補足
特になし

回答1件
あなたの回答
tips
プレビュー