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
命令字符串
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
会被忽略。