PostgreSQL SPI_is_cursor_plan
SPI_is_cursor_plan — 如果一个由SPI_prepare
预备好 的语句可以用于SPI_cursor_open
则返回 true
大纲
bool SPI_is_cursor_plan(SPIPlanPtr plan
)
描述
如果一个由SPI_prepare
预备好 的语句可以被作为一个参数传递给SPI_cursor_open
, SPI_is_cursor_plan
会返回true
。 否则返回false
。原则是该 plan
表示一个单一命令并且这个命令向其调用者
返回元组。例如,只要不含INTO
子句,SELECT
就被允许,而只有包含一个RETURNING
子句时才允许 UPDATE
。
参数
SPIPlanPtr
plan
-
预备语句(由
SPI_prepare
返回)
返回值
如果该plan
能产生一个游标则返回 true
,否则返回false
并且把SPI_result
设置为零。如果不可能决定答案 (例如,如果plan
为 NULL
或无效,或者在没有连接到
SPI 时调用), 那么SPI_result
会被设置为一个合适的错误码 并且返回false
。