SPI_execute_plan — executa uma instrução preparada por SPI_prepare
int SPI_execute_plan(SPIPlanPtrplan, Datum *values, const char *nulls, boolread_only, longcount)
A função SPI_execute_plan executa uma instrução
preparada por SPI_prepare ou uma de suas irmãs.
Os parâmetros read_only e
count têm a mesma interpretação que na função
SPI_execute.
SPIPlanPtr plan
instrução preparada (retornada por SPI_prepare)
Datum * valuesMatriz contendo os valores dos parâmetros. Deve ter o mesmo comprimento que o número de argumentos da instrução.
const char * nullsMatriz descrevendo quais parâmetros são nulos. Deve ter o mesmo comprimento que o número de argumentos da instrução.
Se o parâmetro nulls for NULL,
então a função SPI_execute_plan assume que
nenhum parâmetro é nulo.
Caso contrário, cada entrada na matriz nulls
deverá ser ' ' se o valor do parâmetro
correspondente não for nulo, ou 'n' se o valor
do parâmetro correspondente for nulo.
(Neste último caso, o valor real na entrada correspondente em
values não importa.)
Note que nulls não é uma cadeia de caracteres
de texto, e sim uma matriz:
não há necessidade do terminador '\0'.
bool read_onlytrue para execução de leitura-apenas
long count
número máximo de linhas a serem retornadas,
ou 0 para sem limite
O valor retornado é o mesmo da função SPI_execute,
com os seguintes possíveis resultados de erro (negativos) adicionais:
SPI_ERROR_ARGUMENT
se plan for NULL
ou inválido, ou count for menor que 0
SPI_ERROR_PARAM
se values for NULL e
plan foi preparado com alguns parâmetros
Se a função for bem-sucedida, SPI_processed e
SPI_tuptable são definidos como em
SPI_execute.