SPI_saveplan() PostgreSQL 8.1.19 Documentation SPI_saveplan()NAME
SPI_saveplan - save a plan
SYNOPSIS
void * SPI_saveplan(void * plan)
DESCRIPTION
SPI_saveplan saves a passed plan (prepared by SPI_prepare) in memory
protected from freeing by SPI_finish and by the transaction manager and
returns a pointer to the saved plan. This gives you the ability to re‐
use prepared plans in the subsequent invocations of your procedure in
the current session. You may save the pointer returned in a local vari‐
able. Always check if this pointer is NULL or not either when preparing
a plan or using an already prepared plan in SPI_execute_plan.
ARGUMENTS
void * plan
the plan to be saved
RETURN VALUE
Pointer to the saved plan; NULL if unsuccessful. On error, SPI_result
is set thus:
SPI_ERROR_ARGUMENT
if plan is NULL
SPI_ERROR_UNCONNECTED
if called from an unconnected procedure
NOTES
If one of the objects (a table, function, etc.) referenced by the pre‐
pared plan is dropped during the session then the results of SPI_exe‐
cute_plan for this plan will be unpredictable.
2009-12-09 SPI_saveplan()