PostgreSQL 7.4.18 Documentation
Prev | Fast Backward |  | Fast Forward | Next

# SPI_execp

## Name

SPI_execp -- executes a plan prepared by `SPI_prepare`

## Synopsis

    int SPI_execp(void * plan, Datum * values, const char * nulls, int count)

## Description

`SPI_execp` executes a plan prepared by `SPI_prepare`. `tcount` has the same interpretation as in `SPI_exec`.

## Arguments

`void * `plan``

  execution plan (returned by `SPI_prepare`)

`Datum *`values``

  actual parameter values

`const char * `nulls``

  An array describing which parameters are null. `n` indicates a null value (entry in `values` will be ignored); a space indicates a nonnull value (entry in `values` is valid).

  If `nulls` is `NULL` then `SPI_execp` assumes that no parameters are null.

`int `count``

  number of row for which plan is to be executed

## Return Value

The return value is the same as for `SPI_exec` or one of the following:

`SPI_ERROR_ARGUMENT`

  if `plan` is `NULL` or `count` is less than 0

`SPI_ERROR_PARAM`

  if `values` is `NULL` and `plan` was prepared with some parameters

`SPI_processed` and `SPI_tuptable` are set as in `SPI_exec` if successful.

## Notes

If one of the objects (a table, function, etc.) referenced by the prepared plan is dropped during the session then the result of `SPI_execp` for this plan will be unpredictable.

Prev | Home | Next
SPI_prepare | Up | SPI_cursor_open