summaryrefslogtreecommitdiffstats
path: root/Doc/includes/sqlite3/simple_tableprinter.py
diff options
context:
space:
mode:
Diffstat (limited to 'Doc/includes/sqlite3/simple_tableprinter.py')
-rw-r--r--Doc/includes/sqlite3/simple_tableprinter.py26
1 files changed, 26 insertions, 0 deletions
diff --git a/Doc/includes/sqlite3/simple_tableprinter.py b/Doc/includes/sqlite3/simple_tableprinter.py
new file mode 100644
index 0000000..231d872
--- /dev/null
+++ b/Doc/includes/sqlite3/simple_tableprinter.py
@@ -0,0 +1,26 @@
+import sqlite3
+
+FIELD_MAX_WIDTH = 20
+TABLE_NAME = 'people'
+SELECT = 'select * from %s order by age, name_last' % TABLE_NAME
+
+con = sqlite3.connect("mydb")
+
+cur = con.cursor()
+cur.execute(SELECT)
+
+# Print a header.
+for fieldDesc in cur.description:
+ print(fieldDesc[0].ljust(FIELD_MAX_WIDTH), end=' ')
+print() # Finish the header with a newline.
+print('-' * 78)
+
+# For each row, print the value of each field left-justified within
+# the maximum possible width of that field.
+fieldIndices = range(len(cur.description))
+for row in cur:
+ for fieldIndex in fieldIndices:
+ fieldValue = str(row[fieldIndex])
+ print(fieldValue.ljust(FIELD_MAX_WIDTH), end=' ')
+
+ print() # Finish the row with a newline.