Python连接Access数据库

Posted 小黑的守望

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python连接Access数据库相关的知识,希望对你有一定的参考价值。

前言

今天想要用Python访问Access数据库,折腾了半天,特记录一下

背景

最近想将一些文件记录下来,存入数据库,为此拿LabVIEW写了一个版本,记录环境配置为:
LabVIWE:2015
Access:2016
驱动连接字符串:

Provider=Microsoft.Jet.OLEDB.4.0;Data Source=%s;Jet OLEDB:Database Password=;Persist Security Info=False

虽然用LabVIEW已经实现功能,但觉得还是太笨重了,所以打算用Python再实现一遍。

数据库连接

数据库连接网上大致有两种方法,一种是使用pyodbc,另一种是使用win32com.client,测试了很多遍,最终只有pyodbc成功,而且比较好用,所以这里只介绍这种方法

环境安装

由于LabVIEW已经完成实现,所以环境主要是Python 2.7 和 Access 2016

为了加载需要的库,python 2.7 安装了Pip工具

工具库安装

在此基础上安装pyodbc工具库,在cmd窗口执行如下语句安装

pip install pyodbc

程序实现

import pyodbc  

DBfile = r"test.mdb"  # 数据库文件  
conn = pyodbc.connect(r"Driver={Driver do Microsoft Access (*.mdb)};DBQ=" + DBfile + ";Uid=;Pwd=;")  

cursor = conn.cursor()  
SQL = "SELECT * from MFRProcess;"  
for row in cursor.execute(SQL):  
    print row  
cursor.close()  
conn.close() 

需要注意的是,Driver的内容需要根据自己的环境驱动变化,一开始我认为和LabVIEW一致,后来发现需要根据自己的驱动环境来设置。





以上是关于Python连接Access数据库的主要内容,如果未能解决你的问题,请参考以下文章

Python连接Access数据库

python连接access数据库

使用 Python 从 MS Access 中提取数据

在 python 中打开 Access 数据库时出错

MS Access 数据库被 Python 锁定

如何用vba代码将access数据库连接求代码?