PostgreSQL 中文参考文档
🌐 英文原版 官方 ↗

SPI_prepare_cursor

SPI_prepare_cursor — 准备一条语句,但还不执行它

Synopsis

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

描述

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