Wrap the Cursor object around and execute every method through a proxy function that catches adapter-specific exceptions and translates them into entropy.db.exceptions ones. This way Entropy is eventually sqlite3 agnostic and adapters for several storage engines can be written without affecting the rest of the codebase.