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 会被忽略。