SPI_cursor_open_with_paramlist
SPI_cursor_open_with_paramlist — открыть курсор с параметрами
Синтаксис
Portal SPI_cursor_open_with_paramlist(const char *name, SPIPlanPtrplan, ParamListInfoparams, boolread_only)
Описание
SPI_cursor_open_with_paramlist открывает курсор (внутри называемый порталом) для выполнения оператора, подготовленного функцией SPI_prepare. Эта функция равнозначна SPI_cursor_open, не считая того, что информация о значениях параметров, передаваемых запросу, представляется по-другому. Представление ParamListInfo может быть удобным для передачи значений, уже имеющих нужный формат. Эта функция также поддерживает динамические наборы параметров через функции-обработчики, устанавливаемые в ParamListInfo.
Переданные значения параметров копируются в портал курсора, так что их можно освободить и во время существования курсора.
Аргументы
const char *nameимя портала, либо
NULL, чтобы имя выбрала системаSPIPlanPtrplanподготовленный оператор (возвращаемый функцией
SPI_prepare)ParamListInfoparamsструктура данных, содержащая типы и значения параметров; NULL, если их нет
boolread_onlytrueдля режима выполнения «только чтение»
Возвращаемое значение
Указатель на портал, содержащий курсор. Заметьте, что соглашение о возврате ошибок отсутствует; все ошибки выдаются через elog.
SPI_cursor_open_with_paramlist
SPI_cursor_open_with_paramlist — set up a cursor using parameters
Synopsis
Portal SPI_cursor_open_with_paramlist(const char *name, SPIPlanPtrplan, ParamListInfoparams, boolread_only)
Description
SPI_cursor_open_with_paramlist sets up a cursor (internally, a portal) that will execute a statement prepared by SPI_prepare. This function is equivalent to SPI_cursor_open except that information about the parameter values to be passed to the query is presented differently. The ParamListInfo representation can be convenient for passing down values that are already available in that format. It also supports use of dynamic parameter sets via hook functions specified in ParamListInfo.
The passed-in parameter data will be copied into the cursor's portal, so it can be freed while the cursor still exists.
Arguments
const char *namename for portal, or
NULLto let the system select a nameSPIPlanPtrplanprepared statement (returned by
SPI_prepare)ParamListInfoparamsdata structure containing parameter types and values; NULL if none
boolread_onlytruefor read-only execution
Return Value
Pointer to portal containing the cursor. Note there is no error return convention; any error will be reported via elog.