我試圖在python上使用pyodbc來訪問.mdb。到目前爲止,我根據我的進步此鏈接在Ubuntu上對Python使用Access數據庫(.mdb)
我已經安裝了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)')
有沒有人h有沒有想法?任何幫助將非常感謝
謝謝!
我不熟悉Linux,但在Windows上,此錯誤意味着您沒有在控制面板 - >管理工具 - > ODBC連接中設置ODBC連接。並且您將在連接中傳遞數據源名稱(DNS),而不是文件的名稱(位於DNS中)。 – HardCode
我想因爲我使用.mdb,它都是本地的,所以我不需要DNS。這聽起來是對的嗎?我將其基於本頁頂部的示例https://code.google.com/p/pyodbc/wiki/ConnectionStrings – mythander889
我認爲您仍然需要爲MS Access安裝ODBC驅動程序。 Easysoft銷售一個。 http://www.easysoft.com/products/data_access/odbc-access-driver/index.html假設mdbtools包含一個,但它被描述爲有限。 http://mdbtools.sourceforge.net/install/x90.htm – HansUp