1
它看起来像MySQLdb的,psycopg2和cx_Oracle的工厂有coneccting到数据库的漂亮呈三角接口。因此,它听起来很合理,以创建一个工厂,一个人可以使用这样的:蟒蛇 - 寻找DB驱动程序
conn = DBDriverFactory("MySQL", connectionDetails)
但首先,我要确保:
- 我绝不错过一些更好的解决方案,我的想法是不是真的笨。
- 没有这样的任何众所周知的工作溶液从重塑车轮以防止。
我知道django和炼金术应该做这些事情,但我正在寻找一些非常轻巧和简单(但高效和优雅)的东西。
我对通用接口的印象是基于这样的事实,即所有提到的DB后端暴露光标对象,与执行,fetchone和使用fetchall方法。对于插入,选择,更新等简单操作,只要删除此语句就足够了,并且SQL方言中的差异应该可以忽略不计。 – mnowotka 2012-02-20 10:37:27
的DB-API指定数据库模块应公开的功能,类和方法,是的。您仍然留下不同的参数方式,以及实际SQL语法中的许多差异。仅仅是paramstyle问题意味着仅仅两个不同数据库引擎的SQL语法的“共同子集”就会非常有限。 – 2012-02-20 11:52:20