- 締切済み
DB2でのストアドプロシージャの作成方法
DB2でのストアドプロシージャの作成方法を教えて下さい。 アプリケーションサーバツールキットを使用せずに、 DB2のコントロールセンターなどで作成することはできないのでしょうか。 コントロールセンター以外での作成方法も含め、どんなことでもいいのでアドバイスお願いします! よろしくお願いします。
- みんなの回答 (2)
- 専門家の回答
みんなの回答
- AS400
- ベストアンサー率69% (9/13)
DB2 V8.2での例ですが、 たとえば、以下の内容をファイル(test.sql)に保存して、 CREATE PROCEDURE LISTBP() DYNAMIC RESULT SETS 1 READS SQL DATA LANGUAGE SQL BEGIN DECLARE c CURSOR WITH RETURN TO CALLER FOR SELECT * FROM SYSCAT.BUFFERPOOLS FOR FETCH ONLY; OPEN c; END @ このファイルを db2 connect to xxx db2 -td@ -vf test.sql と実行するとLISTBP()というストアドプロシージャが作れます。
- O_cyan
- ベストアンサー率59% (745/1260)
DB2はSQLプロシージャが使えるんじゃなかったでしょうか。データ定義のスタートメントを選択してSQLストアドプロシージャの生成でウィザードで作成できると思ったのですが・・。定かではありません。 ストアドプロシージャの代用としてDB2はUDU(ユーザー定義関数)があると思います。UDFはCREATE FUNCTION文で作成します。記法は変数宣言や制御文に関してはSQLプロシージャと同じ。 DROP PROCEDURE プロシージャ名@ CREATE PROCEDURE プロシージャ名 (IN job名とタイプ) LANGUAGE SQL BEGIN ここから処理 END @ こんな感じではなかったかと思います。 思い違いだったらゴメンなさい。