我正在尝试使用pyodbc访问Ubuntu上的.mdb。 我已经根据这个链接到目前为止的进展
查询崩溃MS Access
我已经安装了pyodbc,unixodbc和unixodbc-dev
我的代码如下所示:
import csv import pyodbc MDB = 'URY.mdb' DRV ='Microsoft Access Driver (*.mdb)' PWD = 'pass' conn = pyodbc.connect('DRIVER=%s;DBQ=%s;PWD=%s' % (DRV,MDB,PWD)) curs = conn.cursor()
当我运行它时,我收到此错误消息:
Traceback (most recent call last): File "mdbscraper.py", line 8, in <module> conn = pyodbc.connect('DRIVER=%s;DBQ=%s;PWD=%s' % (DRV,MDB,PWD)) pyodbc.Error: ('IM002', '[IM002] [unixODBC][Driver Manager]Data source name not found, and no default driver specified (0) (SQLDriverConnect)')
有没有人有任何想法? 任何帮助将非常感激
谢谢!
从我知道这个驱动程序“Microsoft Access驱动程序(* .mdb)”只在Microsoft主机上可用,因为你在Ubuntu上,它将无法正常工作。
import pyodbc DBfile = '/data/MSAccess/Music_Library.mdb' conn = pyodbc.connect('DRIVER={Microsoft Access Driver (*.mdb)};DBQ='+DBfile) cursor = conn.cursor() SQL = 'SELECT Artist, AlbumName FROM RecordCollection ORDER BY Year;' for row in cursor.execute(SQL): # cursors are iterable print row.Artist, row.AlbumName cursor.close() conn.close()
有使用的官方例子…