SPI_keepplan
SPI_keepplan — сохранить подготовленный оператор
Синтаксис
int SPI_keepplan(SPIPlanPtr plan)Описание
SPI_keepplan закрепляет переданный оператор (подготовленный функцией SPI_prepare), чтобы он не был ликвидирован функцией SPI_finish или диспетчером транзакций. Это даёт возможность повторно использовать подготовленные операторы при последующих вызовах вашей процедуры в текущем сеансе.
Аргументы
SPIPlanPtrplanподготовленный оператор, который нужно сохранить
Возвращаемое значение
0 в случае успеха; SPI_ERROR_ARGUMENT, если plan неверный или NULL
Замечания
Переданный оператор перемещается в постоянное хранилище путём смены указателя (копировать данные не требуется). Если позже вы захотите удалить его, выполните для него SPI_freeplan.
SPI_keepplan
SPI_keepplan — save a prepared statement
Synopsis
int SPI_keepplan(SPIPlanPtr plan)
Description
SPI_keepplan saves a passed statement (prepared by SPI_prepare) so that it will not be freed by SPI_finish nor by the transaction manager. This gives you the ability to reuse prepared statements in the subsequent invocations of your procedure in the current session.
Arguments
SPIPlanPtrplanthe prepared statement to be saved
Return Value
0 on success; SPI_ERROR_ARGUMENT if plan is NULL or invalid
Notes
The passed-in statement is relocated to permanent storage by means of pointer adjustment (no data copying is required). If you later wish to delete it, use SPI_freeplan on it.