From d598e71ec231bf9c6d94ced992ff2c38b92b0cfa Mon Sep 17 00:00:00 2001 From: David Sommerseth Date: Wed, 5 Aug 2009 14:14:30 +0200 Subject: Improved error message on SQL SELECT queries --- server/database.py | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) (limited to 'server/database.py') diff --git a/server/database.py b/server/database.py index 36eebcc..617798b 100644 --- a/server/database.py +++ b/server/database.py @@ -122,13 +122,16 @@ class Database(object): curs = self.conn.cursor() # Query - sql = "SELECT %s FROM %s %s %s" % ( - ",".join(fields), - table, - joins and "%s" % joins or "", - where and "WHERE %s" % " AND ".join(["%s = %%(%s)s" % (k,k) for (k,v) in where.items()] or "") - ) - curs.execute(sql, where) + try: + sql = "SELECT %s FROM %s %s %s" % ( + ",".join(fields), + table, + joins and "%s" % joins or "", + where and "WHERE %s" % " AND ".join(["%s = %%(%s)s" % (k,k) for (k,v) in where.items()] or "") + ) + curs.execute(sql, where) + except Exception, err: + raise Exception, "** SQL ERROR *** %s\n** SQL ERROR ** Message: %s" % ((sql % where), str(err)) # Extract field names fields = [] -- cgit