他のバージョンの文書 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

SPI_execute_plan

名前

SPI_execute_plan -- SPI_prepareで準備された計画を実行します。

概要

int SPI_execute_plan(void * plan, Datum * values, const char * nulls,
                     bool read_only, int count)

説明

SPI_execute_planは、SPI_prepareで準備された計画を実行します。 read_onlycountは、SPI_executeと同様の解釈がなされます。

引数

void * plan

(SPI_prepareで返される)実行計画。

Datum * values

実パラメータ値の配列。 計画の引数の数と同じ長さでなければなりません。

const char * nulls

どのパラメータがNULLであるかを示す配列。 計画の引数の数と同じ長さでなければなりません。 nはNULL値を表します。(values内の項目は無視されます。) 空白は非NULLの値を表します。(values内の項目は有効です。)

nullsNULL の場合、SPI_execute_planは全てのパラメータがNULLではないとみなします。

bool read_only

読み取りのみの実行の場合true

int count

処理される、もしくは、返される行の最大値

戻り値

戻り値は、SPI_execute同様のものに加え、以下のエラー(負)の結果をとることがあります。

SPI_ERROR_ARGUMENT

planNULL あるいは、count が0未満の場合。

SPI_ERROR_PARAM

valuesNULL 、かつ、plan がパラメータ付きで準備された場合。

成功時、SPI_processedSPI_tuptableSPI_execute 同様に設定されます。

注意

準備された計画で参照されるオブジェクト(テーブル、関数、など)のいずれかがセッション中に削除された場合、その計画用のSPI_execute_planの結果は予測不能です。