SPI_prepare_cursor#

SPI_prepare_cursor

SPI_prepare_cursor

SPI_prepare_cursor — подготовить оператор без его выполнения

Синтаксис

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

Описание

SPI_prepare_cursor идентична функции SPI_prepare, за исключением того, что она также позволяет указать параметр cursor options планировщика. Это битовая маска, имеющая значения, указанные в nodes/parsenodes.h для поля options структуры DeclareCursorStmt. Функция SPI_prepare всегда принимает параметр cursor options равным нулю.

Эта функция теперь устарела в пользу 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 игнорируется.