38.4. Données globales avec PL/Tcl
Quelque fois, il est utile d'avoir des données globales qui sont
conservées entre deux appels à une fonction ou qui sont partagées
entre plusieurs fonctions. Ceci peut être facilement obtenu car
toutes les fonctions PL/Tcl exécutées dans une session partagent le
même interpréteur Tcl sûr. Donc, toute variable globale Tcl est
accessible aux appels de fonctions PL/Tcl et persisteront pour la
durée de la session SQL (notez que les fonctions PL/TclU partagent de la même façon les données
globales mais elles sont dans un interpréteur Tcl différent et ne
peuvent pas communiquer avec les fonctions PL/Tcl).
Pour aider à la protection des fonctions PL/Tcl sur les interférences
non intentionnelles, un tableau global est rendu disponible pour
chaque fonction via la commande upvar. Le
nom global de cette variable est le nom interne de la fonction alors
que le nom local est GD. Il est recommandé
d'utiliser GD pour les données privées
persistantes d'une fonction. Utilisez les variables globales Tcl
uniquement pour les valeurs que vous avez l'intention de partager
avec les autres fonctions.
Un exemple de l'utilisation de GD apparaît
dans l'exemple spi_execp ci-dessous.