SPI_execp
SPI_execp — выполнить оператор в режиме чтения/записи
Синтаксис
int SPI_execp(SPIPlanPtrplan, Datum *values, const char *nulls, longcount)
Описание
SPI_execp действует подобно SPI_execute_plan, но ей не передаётся параметр read_only (всегда подразумевается false).
Аргументы
SPIPlanPtrplanподготовленный оператор (возвращаемый функцией
SPI_prepare)Datum *valuesМассив фактических значений параметров. Его размер должен равняться числу аргументов оператора.
const char *nullsМассив, описывающий, в каких параметрах передаётся NULL. Должен иметь размер, равный числу аргументов оператора.
Если в
nullsпередаётсяNULL,SPI_execpсчитает, что ни один из параметров не равен NULL. В противном случае элемент массиваnullsдолжен содержать' ', если значение соответствующего параметра не NULL, либо'n', если это значение — NULL. (В последнем случае значение, переданное в соответствующем элементеvalues, не учитывается.) Заметьте, чтоnulls— это не текстовая строка, а просто массив: ноль ('\0') в конце не нужен.longcountмаксимальное число строк, которое должно быть возвращено; с
0ограничения нет
Возвращаемое значение
См. SPI_execute_plan.
Переменные SPI_processed и SPI_tuptable устанавливаются как в SPI_execute, если вызов был успешным.