SPI_prepare_cursor
SPI_prepare_cursor
SPI_prepare_cursor - prepare a statement, without executing it yet
Synopsis
SPIPlanPtr SPI_prepare_cursor(const char *command, intnargs, Oid *argtypes, intcursorOptions)
Description
SPI_prepare_cursor
is identical to
SPI_prepare
, except that it also allows specification
of the planner's
"
cursor options
"
parameter. This is a bit mask
having the values shown in
nodes/parsenodes.h
for the
options
field of
DeclareCursorStmt
.
SPI_prepare
always takes the cursor options as zero.
Arguments
-
const char *command -
command string
-
intnargs -
number of input parameters (
$1,$2, etc.) -
Oid *argtypes -
pointer to an array containing the OID s of the data types of the parameters
-
intcursorOptions -
integer bit mask of cursor options; zero produces default behavior
Return Value
SPI_prepare_cursor
has the same return conventions as
SPI_prepare
.
Notes
Useful bits to set in
cursorOptions
include
CURSOR_OPT_SCROLL
,
CURSOR_OPT_NO_SCROLL
,
CURSOR_OPT_FAST_PLAN
,
CURSOR_OPT_GENERIC_PLAN
, and
CURSOR_OPT_CUSTOM_PLAN
. Note in particular that
CURSOR_OPT_HOLD
is ignored.