Python から、Access のクエリーを起動する

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) でない場合(たとえば INSERTUPDATE を含むクエリ)、.fetchall() は不要です。
  • Access の 64bit / 32bit ドライバの違いによって動作しない場合があります。Python のビット数と合わせる必要があります。
  • クエリ名にはスペースがある場合、[クエリ名] のように角括弧で囲む必要があります。

よかったらシェアしてね!
目次