web-dev-qa-db-ja.com

pyodbcを使用してMSAccessをPython)に接続する方法

Pyodbcにアクセスしてデータベースを接続するのに問題があります。私は、私のものとほぼ同じように見える他のサンプルコードを見てきました。

import pyodbc 
cnxn = pyodbc.connect('DRIVER={SQL Server};SERVER=localhost;DATABASE=PYODBC.accdb;UID=me;PWD=pass')
cursor = cnxn.cursor()

cursor.execute("SELECT Forename FROM Student")
row = cursor.fetchone()
if row:
    print(row)

私のマシンはWindows7 Home Premium64ビットで実行されています。私はMicrosoftOffice2010を持っています。私が実行している32ビットpython 3.3; 32ビット

何が問題なのかわかりません。エラーメッセージも表示されず、シェルが開きますが、何も起こりません。どんな助けでも大歓迎です

10
Michael

MicrosoftOfficeとPythonの両方の32ビットバージョンを使用しているので、正しい接続文字列を取得したら、次のようになります。

connStr = (
    r"DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};"
    r"DBQ=C:\full\path\to\your\PYODBC.accdb;"
    )
cnxn = pyodbc.connect(connStr)
13
Gord Thompson

Win10とOffice365を使用していますが、Microsoft Access Database Engine2016再頒布可能パッケージをインストールすると問題が解決しました

Microsoft Accessデータベースエンジン2016再頒布可能パッケージ

0