X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=psycopg2%2Fexamples%2Fdict.py;fp=psycopg2%2Fexamples%2Fdict.py;h=37dc74a8241bb53d822cf426ad273c1d62ea5576;hb=e5bdc26e1423689c0ab3204931335787737946ea;hp=0000000000000000000000000000000000000000;hpb=f8dd312990da7cc744e1c148bfd395c18492f3f1;p=plcapi.git diff --git a/psycopg2/examples/dict.py b/psycopg2/examples/dict.py new file mode 100644 index 0000000..37dc74a --- /dev/null +++ b/psycopg2/examples/dict.py @@ -0,0 +1,45 @@ +# dict.py - using DictCUrsor/DictRow +# +# Copyright (C) 2005 Federico Di Gregorio +# +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by the +# Free Software Foundation; either version 2, or (at your option) any later +# version. +# +# This program is distributed in the hope that it will be useful, but +# WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTIBILITY +# or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License +# for more details. + +## put in DSN your DSN string + +DSN = 'dbname=test' + +## don't modify anything below this line (except for experimenting) + +import sys +import psycopg2 +import psycopg2.extras + +if len(sys.argv) > 1: + DSN = sys.argv[1] + +print "Opening connection using dsn:", DSN +conn = psycopg2.connect(DSN) +print "Encoding for this connection is", conn.encoding + + +curs = conn.cursor(cursor_factory=psycopg2.extras.DictCursor) +curs.execute("SELECT 1 AS foo, 'cip' AS bar, date(now()) as zot") + +data = curs.fetchone() +print "Some data accessed both as tuple and dict:" +print " ", data['foo'], data['bar'], data['zot'] +print " ", data[0], data[1], data[2] + +# execute another query and demostrate we can still access the row +curs.execute("SELECT 2 AS foo") +print "Some more data accessed both as tuple and dict:" +print " ", data['foo'], data['bar'], data['zot'] +print " ", data[0], data[1], data[2]