我无法使用python打开访问文件。我不确定问题是关于mdb文件还是python命令。
In [1]: import sys, subprocess
In [2]: DATABASE = 'Exam_BackUp.mdb'
In [3]: table_names = subprocess.Popen(["mdb-tables", "-1", DATABASE], stdout=subprocess.PIPE).communicate()[0]
Couldn't open database.
我如何知道该文件是否是微软访问文件? 我已经检查过我的Ubuntu服务器上安装了mdbtools。
我需要打开(access或fortran)文件并将内容保存到csv。
答案 0 :(得分:1)
为什么不尝试使用ODBC驱动程序打开它?
一个很好的例子是here,根据你的情况复制它将是:
import pyodbc
DBfile = 'Exam_BackUp.mdb'
conn = pyodbc.connect('FILEDSN='+DBfile)
cursor = conn.cursor()
# Do whatever you want with SQL selects, etc
cursor.close()
conn.close()
答案 1 :(得分:0)
您可以通过终端使用mdbtool进行如下转换:
安装mdbtools
并对其进行升级:
pip install mdbtools
pip install --upgrade pip
然后在mdb文件中查找表的名称:
home/Docs$ mdb-tables 'file.mdb'
最后,使用此行将文件转换为.csv:
home/Docs$ mdb-export 'file.mdb' 'name_of_table' > 'file.csv'