Python から Microsoft Access のクエリー(クエリ)を起動(実行)するには、主に pyodbc モジュールを使用します。以下は、その基本的な手順です。
✅ 1. 事前準備
- Microsoft Access データベースファイル(
.mdbまたは.accdb)を用意 - Python に
pyodbcをインストールpip install pyodbc
✅ 2. クエリを実行するコード例
import pyodbc
# Access ファイルのパス(適宜変更)
db_path = r'C:\path\to\your\database.accdb'
# 接続文字列(Access 2010 以降)
conn_str = (
r'DRIVER={Microsoft Access Driver (*.mdb, *.accdb)};'
rf'DBQ={db_path};'
)
# 接続を確立
conn = pyodbc.connect(conn_str)
cursor = conn.cursor()
# クエリ名(Access の保存済みクエリ)
query_name = 'YourSavedQueryName'
# クエリを実行
cursor.execute(f'SELECT * FROM [{query_name}]')
# データを取得して表示
rows = cursor.fetchall()
for row in rows:
print(row)
# 後処理
cursor.close()
conn.close()
✅ 注意点
- クエリが データの取得 (SELECT) でない場合(たとえば
INSERTやUPDATEを含むクエリ)、.fetchall()は不要です。 - Access の 64bit / 32bit ドライバの違いによって動作しない場合があります。Python のビット数と合わせる必要があります。
- クエリ名にはスペースがある場合、
[クエリ名]のように角括弧で囲む必要があります。
