SPI_execp — 以读/写模式执行一个语句
int SPI_execp(SPIPlanPtrplan
, Datum *values
, const char *nulls
, longcount
)
SPI_execp
与
SPI_execute_plan
相同,不过后者的
read_only
参数总是取false
。
SPIPlanPtr plan
预备语句(由SPI_prepare
返回)
Datum * values
实际参数值的数组。长度必须等于该语句的参数数量。
const char * nulls
描述哪些参数为空值的数据。长度必须等于该语句的参数数量。
如果nulls
为NULL
,
那么SPI_execp
会假设没有参数
为空值。否则,如果对应的参数值为非空,
nulls
数组的每一个项都应该是' '
;如果对应参数值为空,
nulls
数组的项应为'n'
(在后
面的情况中,对应的values
项中的值没有
关系)。注意nulls
不是一个文本字符串,
它只是一个数组:它不需要一个'\0'
终止符。
long count
要返回的行的最大数量,或者用0
表示没有限制
见SPI_execute_plan
。
成功时,就像在SPI_execute
中会设置
SPI_processed
和
SPI_tuptable
。