Chapitre 29. pgtcl - Bibliothèque de liens pour Tcl

Table des matières
29.1. Survol
29.2. Charger pgtcl dans une application
29.3. Référence des commandes de pgtcl
pg_connect -- ouvre une connexion au serveur
pg_disconnect -- ferme une connexion au serveur
pg_conndefaults -- Obtient des options de connexion et leur valeurs par défaut
pg_exec -- envoie une commande au serveur
pg_result -- renvoie des informations sur le résultat d'une commande
pg_select -- boucle sur le résultat d'une requête
pg_execute -- execute une requête et boucle de façon optionnelle sur les résultats
pg_listen -- initialise ou modifie un appel pour les messages asynchrones de notification
pg_on_connection_loss -- initialise ou modifie une fonction de rappel pour les pertes inattendues de connexion.
pg_lo_creat -- crée un objet large
pg_lo_open -- ouvre un objet large
pg_lo_close -- ferme un objet large
pg_lo_read -- lit à partir d'un objet large
pg_lo_write -- écrit dans un objet large
pg_lo_lseek -- se déplace à une position dans un objet large
pg_lo_tell -- Renvoie la position actuelle à l'intérieur d'un objet large
pg_lo_unlink -- supprime un objet large
pg_lo_import -- importe un objet large à partir d'un fichier
pg_lo_export -- exporte un objet large dans un fichier
29.4. Programme exemple

pgtcl est un paquet Tcl pour que les programmes client s'interfacent avec les serveurs PostgreSQL. Il rend disponible la plupart des fonctionnalités de libpq pour les scripts Tcl.

29.1. Survol

Tableau 29-1 donne un aperçu des commandes disponibles dans pgtcl. Ces commandes sont décrites en détail dans les pages suivantes.

Tableau 29-1. Commandes pgtcl

CommandeDescription
pg_connectouvre une connexion au serveur
pg_disconnectferme une connexion au serveur
pg_conndefaultsrécupère les options de connexion et leurs valeurs par défaut
pg_execenvoie une commande au serveur
pg_resultobtient des informations sur le résultat d'une commande
pg_selectfait une boucle dans le résultat d'une requête
pg_executeenvoie une requête et boucle, optionnellement, dans les résultats
pg_listeninitialise ou modifie un appel pour les messages de notification asynchrones
pg_on_connection_lossinitialise ou modifie un appel en cas de perte inattendue de connexion
pg_lo_creatcrée un objet large
pg_lo_openouvre un objet large
pg_lo_closeferme un objet large
pg_lo_readlit un objet large
pg_lo_writeécrit dans un objet large
pg_lo_lseekrecherche une position dans un objet large
pg_lo_tellrenvoie la position courante dans objet large
pg_lo_unlinksupprime un objet large
pg_lo_importimporte un objet large à partir d'un fichier
pg_lo_exportexporte un objet large vers un fichier

Les commandes pg_lo_* sont des interfaces vers les fonctionnalités des objets larges de PostgreSQL. Les fonctions sont conçues pour imiter les fonctions analogues du système de fichier dans l'interface standard des systèmes de fichiers Unix. Les commandes pg_lo_* devraient être utilisées à l'intérieur d'un bloc de transaction BEGIN/COMMIT car le descripteur renvoyé par pg_lo_open n'est valide que pour la transaction en cours. pg_lo_import et pg_lo_export doivent être utilisées dans un bloc de transaction BEGIN/COMMIT.