diff options
author | Marko Kreen | 2010-11-11 11:24:07 +0000 |
---|---|---|
committer | Marko Kreen | 2010-11-11 11:24:07 +0000 |
commit | f1d687b9ec38a1cae1837b89b54d4d85df147ea1 (patch) | |
tree | b9f2aa674e38c59526597a5d23b0386fe85c8f66 | |
parent | e4dcfa4d1903e8873348865787348a4d612c71eb (diff) |
Cleanup for the new querybuilder functions
-rwxr-xr-x | python/skytools/querybuilder.py | 45 |
1 files changed, 22 insertions, 23 deletions
diff --git a/python/skytools/querybuilder.py b/python/skytools/querybuilder.py index db168481..8218d794 100755 --- a/python/skytools/querybuilder.py +++ b/python/skytools/querybuilder.py @@ -358,48 +358,37 @@ def plpy_exec(gd, sql, args, all_keys_required = True): gd['plq_cache'][sql] = sq return sq.execute(args, all_keys_required) -# fake plpy for testing -class fake_plpy: - def prepare(self, sql, types): - print "DBG: plpy.prepare(%s, %s)" % (repr(sql), repr(types)) - return ('PLAN', sql, types) - def execute(self, plan, args = []): - print "DBG: plpy.execute(%s, %s)" % (repr(plan), repr(args)) - def error(self, msg): - print "DBG: plpy.error(%s)" % repr(msg) - # some helper functions for convenient sql execution -def run_query(cur, sql, params = None, **kvargs): +def run_query(cur, sql, params = None, **kwargs): """ Helper function if everything you need is just paramertisized execute Sets rows_found that is coneninet to use when you don't need result just want to know how many rows were affected """ - params = params or kvargs + params = params or kwargs sql = QueryBuilder(sql, params).get_sql(0) cur.execute(sql) - rows = cur.dictfetchall() + rows = cur.fetchall() # convert result rows to dbdict if rows: rows = [dbdict(r) for r in rows] return rows -def run_query_row(cur, sql, params = None, **kvargs): +def run_query_row(cur, sql, params = None, **kwargs): """ Helper function if everything you need is just paramertisized execute to fetch one row only. If not found none is returned """ - params = params or kvargs + params = params or kwargs rows = run_query(cur, sql, params) if len(rows) == 0: return None return rows[0] -def run_lookup(cur, sql, params = None, **kvargs): +def run_lookup(cur, sql, params = None, **kwargs): """ Helper function to fetch one value Takes away all the hassle of preparing statements - and processing returned result giving out just one value. Uses plan cache if used inside - db service + and processing returned result giving out just one value. """ - params = params or kvargs + params = params or kwargs sql = QueryBuilder(sql, params).get_sql(0) cur.execute(sql) row = cur.fetchone() @@ -407,15 +396,25 @@ def run_lookup(cur, sql, params = None, **kvargs): return None return row[0] -def run_exists(cur, sql, params = None, **kvargs): +def run_exists(cur, sql, params = None, **kwargs): """ Helper function to fetch one value Takes away all the hassle of preparing statements - and processing returned result giving out just one value. Uses plan cache if used inside - db service + and processing returned result giving out just one value. """ - params = params or kvargs + params = params or kwargs val = run_lookup(cur, sql, params) return not (val is None) + +# fake plpy for testing +class fake_plpy: + def prepare(self, sql, types): + print "DBG: plpy.prepare(%s, %s)" % (repr(sql), repr(types)) + return ('PLAN', sql, types) + def execute(self, plan, args = []): + print "DBG: plpy.execute(%s, %s)" % (repr(plan), repr(args)) + def error(self, msg): + print "DBG: plpy.error(%s)" % repr(msg) + # launch doctest if __name__ == '__main__': import doctest |