无法使用Python连接Access

时间:2018-02-15 05:39:37

标签: python connection driver access

我想通过pypyodbc连接Access和Python,但是有一个错误。有趣的是,在家里它在另一台计算机上工作时没有。我通过文件DSN(Microsoft Access驱动程序) - 'DRIVER={Driver do Microsoft Access (*.mdb)};UID=admin;UserCommitSync=Yes;Threads=3;SafeTransactions=0;PageTimeout=5;MaxScanRows=8;MaxBufferSize=2048;FIL={MS Access};DriverId=25;DefaultDir=C:/PITL;DBQ=C:/PITL/PITL.mdb;'为此计算机创建了一个新的连接链接,但没有。

from tkinter import *
import pypyodbc
import ctypes

#Create connection
con = pypyodbc.connect('DRIVER={Driver do Microsoft Access (*.mdb)};UID=admin;UserCommitSync=Yes;Threads=3;SafeTransactions=0;PageTimeout=5;MaxScanRows=8;MaxBufferSize=2048;FIL={MS Access};DriverId=25;DefaultDir=C:/PITL;DBQ=C:/PITL/PITL.mdb;')
cursor = con.cursor ()

form = Tk ()
form.title ("Main")
form.geometry ('400x400')

def Add ():
    cursor.execute ("SELECT `Law_ID`, `Law_name`, `Fine` FROM Laws WHERE Fine = '2'")
    for row in cursor:
        print (row)

Button=Button(form, text = 'PUSH ME', command = Add)
Button.pack ()

form.mainloop ()

con.commit ()
cursor.close ()
con.close ()
  

回溯(最近一次调用最后一次):文件“C:\ PITL \ SHOW DATA.py”,行   6,在       con = pypyodbc.connect('DRIVER = {Driver do Microsoft Access(* .mdb)}; UID = admin; UserCommitSync = Yes; Threads = 3; SafeTransactions = 0; PageTimeout = 5; MaxScanRows = 8; MaxBufferSize = 2048; FIL = {MS   Access}; DriverId = 25; DefaultDir = C:/ PITL; DBQ = C:/PITL/PITL.mdb;')文件   “C:\ Python34 \ LIB \站点包\ pypyodbc-1.3.4-py3.4.egg \ pypyodbc.py”   第2454行, init       self.connect(connectString,autocommit,ansi,timeout,unicode_results,readonly)文件   “C:\ Python34 \ LIB \站点包\ pypyodbc-1.3.4-py3.4.egg \ pypyodbc.py”   第2507行,连接中       check_success(self,ret)文件“C:\ Python34 \ lib \ site-packages \ pypyodbc-1.3.4-py3.4.egg \ pypyodbc.py”,   第1009行,在check_success中       ctrl_err(SQL_HANDLE_DBC,ODBC_obj.dbc_h,ret,ODBC_obj.ansi)文件   “C:\ Python34 \ LIB \站点包\ pypyodbc-1.3.4-py3.4.egg \ pypyodbc.py”   第985行,在ctrl_err中       raise Error(state,err_text)pypyodbc.Error:('IM002','[IM002] [Microsoft] [ДиспетчердрайверовODBC]Источникданныхненайденине   указандрайвер,используемыйпоумолчанию')

0 个答案:

没有答案