SPI_prepare_cursor — 准备一个语句,但尚未执行
SPIPlanPtr SPI_prepare_cursor(const char *command, intnargs, Oid *argtypes, intcursorOptions)
SPI_prepare_cursor 与 SPI_prepare
完全相同,但它还允许指定规划器的“游标选项”参数。这是一个位掩码,其值显示在 nodes/parsenodes.h 中,对应于 DeclareCursorStmt
的 options 字段。SPI_prepare 始终将游标选项设为零。
该函数现已弃用,推荐使用 SPI_prepare_extended。
const char * command
command string
int nargs输入参数的数量($1、$2 等)
Oid * argtypes包含指向数组的指针OID参数的数据类型
int cursorOptions游标选项的整数位掩码;零会产生默认行为
SPI_prepare_cursor 具有与 SPI_prepare
相同的返回约定。
在 cursorOptions 中设置的有用位包括 CURSOR_OPT_SCROLL、CURSOR_OPT_NO_SCROLL、CURSOR_OPT_FAST_PLAN、CURSOR_OPT_GENERIC_PLAN 和
CURSOR_OPT_CUSTOM_PLAN。请特别注意 CURSOR_OPT_HOLD
被忽略。