0

DB2でカーソルを使用する方法についてマニュアルを調べました。ただし、次のシナリオを実装する方法がまだわかりません。

呼び出し元:クライアントSQLがストアドプロシージャを呼び出し、カーソル内の値をループします

ストアドプロシージャ:呼び出されるストアドプロシージャは、特定の列から行を選択します

カーソルは呼び出し元またはストアドプロシージャで宣言されていますか?呼び出し元のスクリプトでカーソルが宣言されている場合もあれば、ストアドプロシージャでカーソルが宣言されて行が選択されている場合もあります。どちらの方法でも構いません。

4

1 に答える 1

1

ストアドプロシージャはカーソルを定義し、それを呼び出し元のアプリケーションに返します。

これを行うには2つの要件があります。

  1. プロシージャを作成するときにRESULT SETS n、プロシージャが結果セットをクライアントアプリケーションに返すことをDB2に通知するように指定します。

  2. ストアドプロシージャでカーソルを宣言するときWITH RETURNは、このカーソルが呼び出し元のアプリケーションに戻されることを示すオプションを指定する必要があります。

  3. OPENストアドプロシージャ内のカーソル。

ステートメントのドキュメントを読むCREATE PROCEDUREと、ページの下部にこれを示す例があります。

于 2012-08-08T09:36:09.950 に答える