Documentation PostgreSQL 8.3.23 > Programmation serveur > Interface de programmation serveur > Gestion de la mémoire > SPI_modifytuple | |
SPI_returntuple | SPI_freetuple |
SPI_modifytuple — crée une ligne en remplaçant les champs sélectionnés d'une ligne donnée
HeapTuple SPI_modifytuple(Relation rel, HeapTuple row, ncols, colnumber, Datum * values, const char * nulls)
SPI_modifytuple crée une nouvelle ligne en retirant les nouvelles valeurs pour les colonnes sélectionnées et en copiant les colonnes de la ligne d'origine à d'autres positions. La ligne d'entrée n'est pas modifiée.
Utilisé seulement en tant que source du descripteur de ligne pour la ligne (passez une relation plutôt qu'un descripteur de ligne est une erreur).
rangée à modifier
nombre de numéros de colonnes dans le tableau colnumber
tableau des numéros de colonnes à modifier (le numéro des colonnes commence à 1)
nouvelles valeurs pour les colonnes spécifiées
quelles nouvelles valeurs sont NULL, si elles existent (voir SPI_executeplan pour le format)
nouvelle ligne avec modifications, allouée dans le contexte de mémoire courant ; NULL seulement si row est NULL
En cas d'erreur, SPI_result est positionnée comme suit :
si rel est NULL ou si row est NULL ou si ncols est inférieur ou égal à 0 ou si nocolonne est NULL ou si values est NULL.
si nocolonne contient un numéro de colonne invalide (inférieur ou égal à 0 ou supérieur au numéro de colonne dans row)