使用Python读取Microsoft Access数据库需要什么?
我该如何在Python中访问Microsoft Access数据库?用SQL来操作?
我更希望能在Linux上使用这个方法,不过Windows也可以接受。
我只需要读取数据的权限。
12 个回答
13
你提到了一些不错的解决方案。还有一个可能更接近底层的选择是 MDB Tools。
MDB Tools 是一套开源的库和工具,帮助你从 MS Access 数据库(mdb 文件)中导出数据,而不需要使用微软的 DLL 文件。这样的话,非 Windows 系统也能读取这些数据。换句话说,他们是在对 MDB 文件的结构进行逆向工程。
另外,我觉得他们可能还没有开始处理 ACCDB 文件,而且对这个功能的需求也可能不大。
31
在Linux系统上,目前唯一可以使用的工具是MDBTools。[有争议]
在Windows系统上,你可以用pypyodbc来处理mdb文件。
如果你想创建一个Access的mdb文件,可以参考下面的代码:
import pypyodbc
pypyodbc.win_create_mdb( "D:\\Your_MDB_file_path.mdb" )
这里有一个Hello World的示例脚本,可以完整展示pypyodbc对Access的支持功能。
免责声明:我是pypyodbc的开发者。
24
我用过 PYODBC 成功连接到一个 MS Access 数据库——不过是在 Windows 系统上。安装很简单,使用起来也比较容易,只需要设置正确的连接字符串(关于 MS Access 的连接字符串在列表中有提供),然后就可以按照示例开始使用了。