すべてのプロダクト
Search
ドキュメントセンター

PolarDB:REF CURSOR

最終更新日:Mar 28, 2026

カーソル変数は、クエリの結果セットを指すポインターを保持します。静的カーソルとは異なり、カーソル変数は単一のクエリに固定されず、同じカーソル変数を複数回開くことができます。そのたびに異なるクエリを指定できます。

仕組み

カーソル変数にはデータそのものではなく、結果セットへのポインターが含まれます。OPEN FOR 文を実行すると、そのクエリから新しい結果セットが生成され、カーソル変数を通じてアクセス可能になります。カーソル変数はポインターであるため、別のクエリで再度開くことで、異なる結果セットに再割り当てできます。

これは、1 つのクエリに固定され、異なるクエリで再利用できない静的カーソルとは対照的です。

サブプログラムでの REF CURSOR の使用

REF CURSOR 型は、ストアドプロシージャや関数のパラメーターとして受け渡し可能です。また、関数の戻り値の型としても REF CURSOR 型を指定できます。

これにより、カーソル操作を個別のプログラム単位に分散でき、カーソル変数をプログラム間で受け渡して、カーソル関連のロジックをモジュール化できます。