SPI_execute_plan

SPI_execute_plan — ejecuta una sentencia preparada por SPI_prepare

Synopsis

int SPI_execute_plan(SPIPlanPtr plan, Datum * values, const char * nulls,
                     bool read_only, long count)

Descripción

SPI_execute_plan ejecuta una sentencia preparada por SPI_prepare o una de sus funciones hermanas. read_only y count tienen la misma interpretación que en SPI_execute.

Argumentos

SPIPlanPtr plan

sentencia preparada (devuelta por SPI_prepare)

Datum * values

Un array de valores reales de los parámetros. Debe tener la misma longitud que el número de argumentos de la sentencia.

const char * nulls

Un array que describe qué parámetros son nulos. Debe tener la misma longitud que el número de argumentos de la sentencia.

Si nulls es NULL, entonces SPI_execute_plan asume que ningún parámetro es nulo. De lo contrario, cada entrada del array nulls debería ser ' ' si el valor del parámetro correspondiente no es nulo, o 'n' si el valor del parámetro correspondiente es nulo. (En este último caso, el valor real en la entrada correspondiente de values no importa). Tenga en cuenta que nulls no es una cadena de texto, solo un array: no necesita un terminador '\0'.

bool read_only

true para una ejecución de solo lectura

long count

número máximo de filas a devolver, o 0 para ilimitado

Valor de retorno

El valor de retorno es el mismo que para SPI_execute, con los siguientes posibles resultados de error (negativos) adicionales:

SPI_ERROR_ARGUMENT

si plan es NULL o inválido, o si count es menor que 0

SPI_ERROR_PARAM

si values es NULL y el plan fue preparado con algunos parámetros

SPI_processed y SPI_tuptable se establecen como en SPI_execute en caso de éxito.