diff -r 10841abbc01f -r 001f52cd057e lib/db.py --- a/lib/db.py Thu Jan 17 01:56:04 2008 +0000 +++ b/lib/db.py Sun Jan 20 01:07:02 2008 +0000 @@ -20,7 +20,7 @@ import sqlite3 -conn = sqlite3.connect("degal.db") +conn = sqlite3.connect("db/degal.db") def execute (expr, *args) : c = conn.cursor() @@ -28,10 +28,33 @@ return c -def insert (expr, *args) : - return execute(expr, *args).rowcount +def execute_many (expr, iter) : + c = conn.cursor() + c.executemany(expr, iter) + + return c + +def commit (cursor) : + try : + cursor.execute("COMMIT") + except sqlite3.OperationalError : + pass # ffs. INSERT just doesn't do anything otherwise + + return cursor.rowcount + +def execute_commit (expr, *args) : + return commit(execute(expr, *args)) + +def execute_commit_many (expr, iter) : + return commit(execute_many(expr, iter)) select = execute +delete = execute_commit +insert = execute_commit + +delete_many = execute_commit_many +insert_many = execute_commit_many + cursor = conn.cursor