SPI_prepare_extended#

SPI_prepare_extended

SPI_prepare_extended

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

Синтаксис

SPIPlanPtr SPI_prepare_extended(const char * command,
                                const SPIPrepareOptions * options)

Описание

SPI_prepare_extended создает и возвращает подготовленный оператор для указанной команды, но не выполняет команду. Эта функция эквивалентна функции SPI_prepare, с тем отличием, что вызывающая сторона может указать параметры для управления разбором внешних ссылок на параметры, а также другими аспектами разбора и планирования запроса.

Аргументы

const char * command

строка команды

const SPIPrepareOptions * options

структура, содержащая необязательные аргументы

Всегда обнуляйте всю структуру options перед заполнением нужных полей. Это гарантирует совместимость кода в будущем, так как любые добавленные поля в структуру будут заданы таким образом, чтобы сохранять обратную совместимость, если они равны нулю. В настоящее время доступны следующие поля options:

ParserSetupHook parserSetup

Функция настройки парсера хука

void * parserSetupArg

передаваемый аргумент для parserSetup

RawParseMode parseMode

режим для сырого разбора; RAW_PARSE_DEFAULT (ноль) производит стандартное поведение

int cursorOptions

целочисленная битовая маска параметров курсора; ноль приводит к использованию поведения по умолчанию

Возвращаемое значение

SPI_prepare_extended имеет те же соглашения о возврате, что и SPI_prepare.