SPI_prepare_cursor — prépare une requête, sans l'exécuter pour l'instant
SPIPlanPtr SPI_prepare_cursor(const char *command, intnargs, Oid *argtypes, intcursorOptions)
SPI_prepare_cursor est identique à
SPI_prepare, sauf qu'il permet aussi la spécification
du paramètre des « options du curseur » du planificateur. Il
s'agit d'un champ de bits dont les valeurs sont indiquées dans
nodes/parsenodes.h pour le champ
options de DeclareCursorStmt.
SPI_prepare utilise zéro pour les options du curseur.
const char * commandchaîne commande
int nargs
nombre de paramètres en entrée ($1, $2, etc.)
Oid * argtypespointeur vers un tableau contenant l'OID des types de données des paramètres
int cursorOptionschamp de bits précisant les options du curseur ; zéro est le comportement par défaut
SPI_prepare_cursor a les mêmes conventions pour la
valeur de retour que SPI_prepare.
Les bits utiles pour cursorOptions incluent
CURSOR_OPT_NO_SCROLL,
CURSOR_OPT_FAST_PLAN,
CURSOR_OPT_GENERIC_PLAN et
CURSOR_OPT_CUSTOM_PLAN. Notez en particulier que
CURSOR_OPT_HOLD est ignoré.