我应该使用什么库从 Windows 上的 python 连接到 odbc?就 odbc 而言,pywin32 有什么好的替代方案吗?
我正在寻找有据可查、健壮、积极维护等pyodbc
看起来不错的东西——还有其他的吗?
我使用SQLAlchemy进行所有 python 数据库访问。我强烈推荐 SQLAlchemy。
SA 在连接到 SQL 服务器数据库时在后台使用 pyodbc。它使用其他 DBAPI 库连接到其他数据库,例如 cx_Oracle。
一个简单的示例,使用 SQLAlchemy,就像您通常使用 DBAPI 模块一样:
import sqlalchemy
engine = sqlalchemy.create_engine('sqlite:///database.db')
for r in engine.execute('SELECT * FROM T'):
print(r.OneColumn, r.OtherColumn)
另一种选择是用纯 Python 编写的pypyodbc 。它可以看作是对 pyodbc 模块的重新实现——只有大约 1800 行代码,有利于维护。
我在工作中使用 pyodbc,它从来没有让我失望(我们有各种 dbs)。它强大且快速。
它得到积极维护,python 3 版本即将推出。
如果您想要具有付费支持的“企业”软件,您可以使用mxODBC。
您可以试一试 turbodbc。从 1.1.1 版本开始,正式支持 Windows。很有可能它比 pyodbc 更快。
pyodbc现在支持 Python 3 !