aboutsummaryrefslogtreecommitdiff
path: root/src/interfaces/python/tutorial/pgtools.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/interfaces/python/tutorial/pgtools.py')
-rwxr-xr-xsrc/interfaces/python/tutorial/pgtools.py48
1 files changed, 48 insertions, 0 deletions
diff --git a/src/interfaces/python/tutorial/pgtools.py b/src/interfaces/python/tutorial/pgtools.py
new file mode 100755
index 00000000000..5355c584d72
--- /dev/null
+++ b/src/interfaces/python/tutorial/pgtools.py
@@ -0,0 +1,48 @@
+#! /usr/local/bin/python
+# pgtools.py - valuable functions for PostGreSQL tutorial
+# written 1995 by Pascal ANDRE
+
+import sys
+
+# number of rows
+scr_size = 24
+
+# waits for a key
+def wait_key():
+ print "Press <enter>"
+ sys.stdin.read(1)
+
+# displays a table for a select query result
+def display(fields, result):
+ print result
+ # gets cols width
+ fmt = []
+ sep = '+'
+ head = '|'
+ for i in range(0, len(fields)):
+ max = len(fields[i])
+ for j in range(0, len(result)):
+ if i < len(result[j]):
+ if len(result[j][i]) > max:
+ max = len(result[j][i])
+ fmt.append(" %%%ds |" % max)
+ for j in range(0, max):
+ sep = sep + '-'
+ sep = sep + '--+'
+ for i in range(0, len(fields)):
+ head = head + fmt[i] % fields[i]
+ print sep + '\n' + head + '\n' + sep
+ pos = 6
+ for i in range(0, len(result)):
+ str = '|'
+ for j in range(0, len(result[i])):
+ str = str + fmt[j] % result[i][j]
+ print str
+ pos = pos + 1
+ if pos == scr_size:
+ print sep
+ wait_key()
+ print sep + '\n' + head + '\n' + sep
+ pos = 6
+ print sep
+ wait_key()