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

PolarDB:カーソル変数を宣言するDeclare a cursor variable

最終更新日:May 29, 2024

SPLは、SYS_REFCURSOR組み込みデータ型を使用するとともに、REF cursorの型を作成してその型の変数を宣言することにより、カーソル変数の宣言をサポートします。 SYS_REFCURSORは、任意の結果セットをそれに関連付けることを可能にするREF CURSORタイプである。 これは、弱タイプのREF CURSORとして知られています。

SYS_REFCURSORの宣言とユーザー定義のREF CURSOR変数のみが異なります。 カーソルを開くこと、カーソルを選択すること、およびカーソルを閉じることなどの残りの使用法は、両方のカーソルタイプにわたって同じである。 このトピックの残りの部分では、主にSYS_REFCURSORカーソルを使用する例を示します。 ユーザー定義のREF CURSORで動作させるために、例で変更する必要があるのは、宣言セクションだけです。

説明 厳密に型付けされたREF CURSORは、互換性のあるデータ型を持つフィールドの宣言された数と順序に準拠する結果セットを必要とし、オプションで結果セットを返すこともできます。

SYS_REFCURSORカーソル変数を宣言する

次のコードは、SYS_REFCURSORカーソル変数を宣言するための構文です。

名前SYS_REFCURSOR;

nameは、カーソル変数に割り当てられた識別子です。

次のコードは、SYS_REFCURSOR変数宣言の例です。

DECLARE
    emp_refcur SYS_REFCURSOR;
        ...

ユーザー定義のREF CURSOR型変数を宣言する

ユーザー定義のREF CURSOR変数を使用するには、2つの異なる宣言ステップを実行する必要があります。

  • 参照カーソルTYPEを作成します。
  • そのTYPEに基づいて実際のカーソル変数を宣言します。

ユーザー定義のREFを作成するための構文 CURSORタイプは次のとおりです。

TYPE cursor_type_name IS REF CURSOR [RETURN return_type];

次のコードは、カーソル変数宣言の例です。

DECLARE
    TYPE emp_cur_type IS REF CURSOR RETURN emp % ROWTYPE;
    my_rec emp_cur_type;
        ...