SPI_saveplan
名前
SPI_saveplan -- 準備済み文を保存する
概要
SPIPlanPtr SPI_saveplan(SPIPlanPtr plan)
説明
SPI_saveplan
は渡された(SPI_prepare
で準備された)文をSPI_finish
とトランザクションマネージャで解放されないメモリ内にコピーします。
そして、コピーした文のポインタを返します。
これは、現在のセッションにおける、その後のプロシージャの呼び出しで準備済み文を再利用できる機能を提供します。
戻り値
コピーした文へのポインタ。
失敗した場合はNULLです。
エラー時、SPI_resultは以下のように設定されます。
- SPI_ERROR_ARGUMENT
planがNULL、または無効な場合
- SPI_ERROR_UNCONNECTED
未接続のプロシージャから呼び出された場合
注意
渡された元の文は解放されません。
ですので、SPI_finish
を行うまでのメモリリークを防ぎたければSPI_freeplan
を実行してください。
準備済み文のデータ構造を物理的にコピーする必要なく、ほとんど同じ結果をもたらしますので、たいていの場合、この関数よりもSPI_keepplan
の方が好ましいです。