Caractéristiques de l’utilisation du curseur
-
La clause
FOR UPDATE
est autorisée dans l’instructionSELECT
, mais elle n’est pas nécessaire pour une mise à jour ou une suppression positionnelle réussie ; -
Assurez-vous que les noms de curseurs déclarés ne correspondent pas à des noms définis plus tard dans les clauses
AS CURSOR
; -
Si un curseur n’est nécessaire que pour parcourir le jeu de données résultant, il est presque toujours plus facile (et moins sujet aux erreurs) d’utiliser l’instruction FOR
SELECT
avec la clauseAS CURSOR
. Les curseurs déclarés doivent être explicitement ouverts, utilisés pour sélectionner des données et fermés. Vous devez également vérifier la variable contextuelleROW_COUNT
après chaque sélection et quitter la boucle si sa valeur est nulle. La clauseFOR SELECT
effectue cette vérification automatiquement. Cependant, les curseurs déclarés donnent un meilleur contrôle sur les événements séquentiels et permettent de gérer plusieurs curseurs en parallèle ; -
L’instruction
SELECT
peut contenir des paramètres tels que : "SÉLECTIONNER NOM || :SFX À PARTIR DE NOMS OÙ NUMÉRO = :NUM". Chaque paramètre doit être déclaré au préalable comme une variable PSQL (ceci s’applique également aux paramètres d’entrée et de sortie). Lorsque le curseur est ouvert, le paramètre se voit attribuer la valeur variable actuelle ; -
Si l’option de défilement est omise, NO SCROLL est supposé par défaut (c’est-à-dire que le curseur n’est ouvert que pour un déplacement vers l’avant). Cela signifie que seules les commandes
FETCH [NEXT FROM]
peuvent être utilisées. Les autres commandes renverront des erreurs.
Warning
|
Si la valeur d’une variable PSQL utilisée dans une instruction |