IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

SPI_execute_plan

SPI_execute_plan — exécute un plan préparé par SPI_prepare

Synopsis

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

Description

SPI_execute_plan exécute un plan préparé par SPI_prepare. read_only et count ont la même interprétation que dans SPI_execute.

Arguments

SPIPlanPtr plan

plan d'exécution (retourné par SPI_prepare)

Datum *values

Un tableau des vraies valeurs des paramètres. Doit avoir la même longueur que le nombre d'arguments du plan.

const char * nulls

Un tableau décrivant les paramètres nuls. Doit avoir la même longueur que le nombre d'arguments du plan. n indique une valeur NULL (l'entrée correspondante dans values sera ignorée) ; un espace indique une valeur non NULL (l'entrée correspondante dans values est valide).

Si nulls est NULL, alors SPI_executeplan part du principe qu'aucun paramètre n'est nul.

bool read_only

true pour une exécution en lecture seule

long count

nombre maximum de lignes à traiter ou à renvoyer

Valeur de retour

La valeur de retour est la même que pour SPI_execute avec les résultats d'erreurs (négatif) possibles :

SPI_ERROR_ARGUMENT

si plan est NULL ou invalide ou count est inférieur à 0

SPI_ERROR_PARAM

si values est NULL et plan est préparé avec des paramètres

SPI_processed et SPI_tuptable sont positionnés comme dans SPI_execute en cas de réussite.

Notes

Si l'un des objets (une table, une fonction, etc.) référencés par le plan préparé est effacé pendant la session, alors le résultat de SPI_executeplan pour ce plan sera imprévisible.