Update of /usr/cvs/Public/pygresql/module
In directory druid.net:/tmp/cvs-serv11491
Modified Files:
TEST_PyGreSQL_classic.py pg.py
Log Message:
Quote field names in inserts. Add unit test.
To see the diffs for this commit:
http://www.druid.net/pygresql/viewcvs.cgi/cvs/pygresql/module/TEST_PyGreSQL_classic.py.diff?r1=1.9&r2=1.10
Index: TEST_PyGreSQL_classic.py
===================================================================
RCS file: /usr/cvs/Public/pygresql/module/TEST_PyGreSQL_classic.py,v
retrieving revision 1.9
retrieving revision 1.10
diff -u -p -u -r1.9 -r1.10
--- TEST_PyGreSQL_classic.py 6 Jan 2007 16:45:41 -0000 1.9
+++ TEST_PyGreSQL_classic.py 10 Aug 2007 15:55:04 -0000 1.10
@@ -95,6 +95,14 @@ class utility_test(unittest.TestCase):
db.insert('_test_schema', _test = 1235)
self.assertEqual(d['dvar'], 999)
+ def test_mixed_case(self):
+ try: db.query('CREATE TABLE _test_mc ("_Test" int PRIMARY KEY)')
+ except: pass
+
+ db.query("DELETE FROM _test_mc")
+ d = dict(_Test = 1234)
+ db.insert('_test_mc', d)
+
def test_update(self):
try: db.query("INSERT INTO _test_schema VALUES (1234)")
except: pass # OK if it already exists
http://www.druid.net/pygresql/viewcvs.cgi/cvs/pygresql/module/pg.py.diff?r1=1.53&r2=1.54
Index: pg.py
===================================================================
RCS file: /usr/cvs/Public/pygresql/module/pg.py,v
retrieving revision 1.53
retrieving revision 1.54
diff -u -p -u -r1.53 -r1.54
--- pg.py 2 Mar 2007 20:35:55 -0000 1.53
+++ pg.py 10 Aug 2007 15:55:04 -0000 1.54
@@ -5,7 +5,7 @@
# Written by D'Arcy J.M. Cain
# Improved by Christoph Zwerschke
#
-# $Id: pg.py,v 1.53 2007/03/02 20:35:55 cito Exp $
+# $Id: pg.py,v 1.54 2007/08/10 15:55:04 darcy Exp $
#
"""PyGreSQL classic interface.
@@ -419,7 +419,7 @@ class DB:
for f in fnames.keys():
if f != 'oid' and a.has_key(f):
t.append(_quote(a[f], fnames[f]))
- n.append(f)
+ n.append('"%s"' % f)
q = 'INSERT INTO %s (%s) VALUES (%s)' % \
(qcl, ','.join(n), ','.join(t))
self._do_debug(q)
_______________________________________________
PyGreSQL mailing list
[email protected]
http://mailman.vex.net/mailman/listinfo/pygresql