aboutsummaryrefslogtreecommitdiff
path: root/src/bin/pgtclsh/pgtclUtils.tcl
diff options
context:
space:
mode:
Diffstat (limited to 'src/bin/pgtclsh/pgtclUtils.tcl')
-rw-r--r--src/bin/pgtclsh/pgtclUtils.tcl16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/bin/pgtclsh/pgtclUtils.tcl b/src/bin/pgtclsh/pgtclUtils.tcl
new file mode 100644
index 00000000000..dff87a484f4
--- /dev/null
+++ b/src/bin/pgtclsh/pgtclUtils.tcl
@@ -0,0 +1,16 @@
+# getDBs :
+# get the names of all the databases at a given host and port number
+# with the defaults being the localhost and port 5432
+# return them in alphabetical order
+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_disconnect $conn
+ return $datnames
+}
+