SPI_is_cursor_plan

Name

SPI_is_cursor_plan -- return true if a plan prepared by SPI_prepare can be used with SPI_cursor_open

Synopsis

bool SPI_is_cursor_plan(void * plan )

Description

SPI_is_cursor_plan returns true if a plan prepared by SPI_prepare can be passed as an argument to SPI_cursor_open , or false if that is not the case. The criteria are that the plan represents one single command and that this command returns tuples to the caller; for example, SELECT is allowed unless it contains an INTO clause, and UPDATE is allowed only if it contains a RETURNING clause.

Arguments

void * plan

execution plan (returned by SPI_prepare )

Return Value

true or false to indicate if the plan can produce a cursor or not, or SPI_ERROR_ARGUMENT if the plan is NULL