PostgreSQL

PostgreSQL Elephant Logo

SPI_prepare_cursor

SPI_prepare_cursor — prepare a statement, without executing it yet

Synopsis

SPIPlanPtr SPI_prepare_cursor(const char * command, int nargs,
                              Oid * argtypes, int cursorOptions)

Description

SPI_prepare_cursor is identical to SPI_prepare, except that it also allows specification of the planner’s “[.quote]#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

`int +`_`+nargs`_

number of input parameters ($1, $2, etc.)

`Oid * +`_`+argtypes`_

pointer to an array containing the OIDs of the data types of the parameters

`int +`_`+cursorOptions`_

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.


Prev Up Next

SPI_prepare

Home

SPI_prepare_params

Submit correction

If you see anything in the documentation that is not correct, does not match your experience with the particular feature or requires further clarification, please use this form to report a documentation issue.

Copyright © 1996-2023 The PostgreSQL Global Development Group