如何在Python中访问Microsoft access数据库?使用SQL?
我更喜欢在Linux上工作的解决方案,但我也可以满足于Windows。
我只需要读访问权。
发布于 2009-05-12 15:39:23
This SO question演示了使用它来读取MS Access是可能的。
发布于 2009-05-13 02:32:10
您已经有了一些听起来不错的解决方案。另一个可能比您希望的更接近“金属”的工具是MDB工具。
MDB Tools是一组开源库和实用程序,可在不使用Microsoft DLL的情况下方便地从MS Access数据库(mdb文件)导出数据。因此,非Windows操作系统可以读取数据。或者,换句话说,他们是在对MDB文件的布局进行逆向工程。
还要注意的是,我怀疑他们是否已经开始处理ACCDB文件,而且可能不会有太多对该功能的需求。
发布于 2014-06-07 19:01:32
在Ubuntu 12.04上,我这样做是为了让它工作。
安装pyodbc:
$ sudo apt-get install python-pyodbc
接下来安装一些额外的驱动程序:
$ sudo apt-get install mdbtools libmdbodbc1
制作一个连接到数据库并显示所有表格的小测试程序:
import os
import pyodbc
db_path = os.path.join("path", "toyour", "db.mdb")
odbc_connection_str = 'DRIVER={MDBTools};DBQ=%s;' % (db_path)
connection = pyodbc.connect(odbc_connection_str)
cursor = connection.cursor()
query = "SELECT * FROM MSysObjects WHERE Type=1 AND Flags=0"
cursor.execute(query)
rows = cursor.fetchall()
for row in rows:
print row
我希望它能帮上忙。
https://stackoverflow.com/questions/853370
复制相似问题