PostgreSQL SPI_execp
SPI_execp — 以读/写模式执行一个语句
大纲
int SPI_execp(SPIPlanPtr plan
, Datum * values
, const char * nulls
, long count
)
描述
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
。