SPI_is_cursor_plan
Название
SPI_is_cursor_plan -- выдать true, если оператор, подготовленный функциейSPI_prepare, можно использовать с SPI_cursor_openОписание
SPI_is_cursor_plan возвращает true, если оператор, подготовленный функцией SPI_prepare, можно передать в качестве аргумента SPI_cursor_open, или false в противном случае. Для положительного ответа в plan должна быть представлена одна команда, и эта команда должна возвращать кортежи; например, SELECT может быть подходящей командой, если он не содержит предложения INTO, а UPDATE подходит, только если он содержит предложение RETURNING.
Возвращаемое значение
Значение true или false, показывающее, можно ли для подготовленного оператора, заданного параметром plan, получить курсор, при SPI_result равном нулю. Если дать ответ невозможно (например, если значение plan неверное или NULL, либо вызывающий не подключён к SPI), в SPI_result устанавливается соответствующий код ошибки и возвращается false.
| Пред. | Начало | След. |
| SPI_getargtypeid | Уровень выше | SPI_execute_plan |
SPI_is_cursor_plan
Name
SPI_is_cursor_plan -- return true if a statement prepared bySPI_prepare can be used with SPI_cursor_openDescription
SPI_is_cursor_plan returns true if a statement 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.
Return Value
true or false to indicate if the plan can produce a cursor or not, with SPI_result set to zero. If it is not possible to determine the answer (for example, if the plan is NULL or invalid, or if called when not connected to SPI), then SPI_result is set to a suitable error code and false is returned.