SPI_cursor_open

Name

SPI_cursor_open -- SPI_prepare で作成されて計画を使用するカーソルを設定 します。

Synopsis

SPI_cursor_open(name,
plan,
values,
nulls)

入力

char *name

入口の名前です。 NULL の場合、システムが名前を選択します。

void *plan

実行計画

Datum *values

パラメータの実際の値

char *nulls

どのパラメータがNULLかを示す配列

n は NULL を示します。 (values[] エントリは無視されます)
空白は非 NULL を示します。 (values[] エントリは有効です)

出力

Portal

カーソルをもつ入口へのポインタです。 エラーの場合は NULLです。

説明

SPI_cursor_openSPI_prepare で準備された計画を実行するカーソル(内部的には、入口)を設定します。

計画を直接実行するのではなくカーソルを使用することには、2つの利点があります。一点目は、結果の行を一度に少しだけ取り出すことができることです。 これにより、多くの行を返す問い合わせに要するメモリの消費を抑えることができます。二点目は、入口が現在のプロシージャ外部でも継続利用できることです(実際、現在のトランザクションの終了まで継続利用できます)。入口の名前をプロシージャの呼び出し元に返すことは、行セット結果を返す方法を提供します。

使用方法

引数nullsがNULLの場合、SPI_cursor_openは、(取り得る)すべての値は非NULLであるものとします。