SPI_is_cursor_plan

SPI_is_cursor_plan — 如果一个由SPI_prepare预备好 的语句可以用于SPI_cursor_open则返回 true

Synopsis

bool SPI_is_cursor_plan(SPIPlanPtr plan)

描述

如果一个由SPI_prepare预备好 的语句可以被作为一个参数传递给SPI_cursor_openSPI_is_cursor_plan会返回true。 否则返回false。原则是该 plan表示一个单一命令并且这个命令向其调用者 返回元组。例如,只要不含INTO子句,SELECT 就被允许,而只有包含一个RETURNING子句时才允许 UPDATE

参数

SPIPlanPtr plan

预备语句(由SPI_prepare返回)

返回值

如果该plan能产生一个游标则返回 true,否则返回false 并且把SPI_result设置为零。如果不可能决定答案 (例如,如果planNULL或无效,或者在没有连接到 SPI 时调用), 那么SPI_result会被设置为一个合适的错误码 并且返回false