Documentation PostgreSQL 7.4.29 | ||||
---|---|---|---|---|
Précédent | Arrière rapide | Avance rapide | Suivant |
SPI_prepare
SPI_prepare
SPI_exec
ou une
fonction semblableL'interface de programmation serveur (SPI) donne aux auteurs de fonctions C la capacité de lancer des commandes SQL au sein de leurs fonctions. SPI est une série de fonctions d'interface simplifiant l'accès à l'analyseur, au planificateur, à l'optimiseur et au lanceur. SPI fait aussi de la gestion de mémoire.
Note : Les langages procéduraux disponibles donnent plusieurs moyens de lancer des commandes SQL à partir de procédures. Certains sont basés ou conçus à partir de SPI. Cette documentation présente donc également un intérêt pour les utilisateurs de ces langages.
Pour assurer la compréhension, nous utiliserons le terme de << fonction >> quand nous parlerons de fonctions d'interface SPI et << procédure >> pour une fonction C définie par l'utilisateur et utilisant SPI.
Notez que si, pendant l'exécution d'une procédure, la transaction est annulée du fait d'une erreur dans une commande, le contrôle ne sera pas rendu à votre procédure. Au lieu de cela, le travail sera annulé et le serveur attendra la commande suivante du client. À cela est lié une restriction, à savoir l'incapacité d'exécuter les instructions BEGIN, COMMIT et ROLLBACK (instructions de contrôle de transaction) au sein d'une procédure. Ces deux restrictions seront probablement modifiées dans le futur.
Les fonctions SPI renvoient un résultat positif en cas de succès (soit par une valeur de retour entière, soit dans la variable globale SPI_result comme décrit ci-dessous). En cas d'erreur, un résultat négatif ou NULL sera retourné.
Les fichiers de code source qui utilisent SPI doivent inclure le fichier d'en-tête executor/spi.h.
SPI_prepare
SPI_prepare
Précédent | Sommaire | Suivant |
Accès à la base de données | Niveau supérieur | SPI_connect |