首页 > 解决方案 > 如何在 python 和 SQL 中使用 Microsoft Access 数据库文件

问题描述

我已经苦苦挣扎了好几个小时,试图弄清楚如何连接数据库然后使用它。到目前为止,我已经连接它,但是一旦我想执行“选择”,它就会显示文件不是数据库的错误,即使我在 MS Access 中创建了文件,然后将文件重命名为 .db . 这是代码,数据库名称是TestDB。

import sqlite3 as db
from sqlite3 import Error

def create_connection(db_file):
    """ create a database connection to a SQLite database """
    conn = None
    try:
        conn = db.connect(db_file)
        print(db.version)
    except Error as e:
        print(e)
    finally:
        if conn:
            print('Got connected')
            dbCursor= conn.cursor()
            dbCursor.execute('select * from Table1')

    if __name__ == '__main__':
        create_connection(r"TestDB.db")

标签: pythonsql

解决方案


我在工作中经常使用 mdb 文件,这是我的实现:

import pyodbc
DRIVER="{Microsoft Access Driver (*.mdb)}"

con = pyodbc.connect('DRIVER={};DBQ={}'.format(DRIVER,'path/to/accessfile'))
mdbcon = con.connect()
cursor = mdbcon.cursor()

您放入的DRIVER内容因安装的内容而异。检查您的 ODBC 驱动程序以查看您安装了哪个驱动程序。你的python安装和你的access安装都是32位还是64位也很重要,过去不匹配给我带来了很多问题。


推荐阅读