29.4. Programme exemple

Exemple 29-1 affiche un petit exemple de l'utilisation de commandes pgtcl.

Exemple 29-1. Programme exemple avec pgtcl

# getDBs :
#   Récupère les noms de toutes les bases de données d'un hôte et d'un port
#   donnés, les valeurs par défaut étant localhost et 5432.
#   Les renvoie dans l'ordre alphabétique.
proc getDBs { {host "localhost"} {port "5432"} } {
    # datnames est la liste résultante
    set conn [pg_connect template1 -host $host -port $port]
    set res [pg_exec $conn "SELECT datname FROM pg_database ORDER BY datname;"]
    set ntups [pg_result $res -numTuples]
    for {set i 0} {$i < $ntups} {incr i} {
	lappend datnames [pg_result $res -getTuple $i]
    }
    pg_result $res -clear
    pg_disconnect $conn
    return $datnames
}