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。
参数
SPIPlanPtrplan-
预备语句(由
SPI_prepare返回)
返回值
如果该plan能产生一个游标则返回 true,否则返回false
并且把SPI_result设置为零。如果不可能决定答案 (例如,如果plan为 NULL或无效,或者在没有连接到
SPI 时调用), 那么SPI_result会被设置为一个合适的错误码 并且返回false。