4.2. 例

これらの処理を使った小さな例を示します。

# getDBs :

#   指定ホストとポート番号で動作している全データベース名を得ます。
#   デフォルト値は localhost と 5432 ポートです。
#   アルファベット順に結果を返します。

proc getDBs { {host "localhost"} {port "5432"} } {
    # datnames is the list to be result
    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
}