利用Python语言对Access进行访问、操作,与python访问关系型数据库的通常做法无疑,但是基于Access数据需要关注一些特定的细节,在这里和大家分享一下。
首先,要检查一下自己的操作系统和office的细节,主要是确定windows(设定在windows下安装)和office是32位还是64位。以下安装环境是windows 64+office 64位。如果出现其他情况,需要一个破折,可以参考这篇帖子:ACCESS使用64位ODBC:ACCESS使用64位odbc_access数据库64位系统驱动程序-CSDN博客
如果确定是windows 64+office 64,请按照以下程序操作。
1. 需要安装ODBC 驱动程序。居然是真的,ODBC 64位没有ACCESS的驱动,你需要安装。不用担心,没有多么复杂,下载ODBC 64位程序,直接安装。下载地址如下(2024年3月7日访问可用):
https://www.microsoft.com/zh-cn/download/details.aspx?id=54920
下载程序名中有X64的程序,这是针对64位的驱动,安装成功。
2. 设置ODBC,具体可以参考这3个帖子,结合起来看,2个有图,1个有文字。基本过程就是在控制面板的ODBC中设置好相关参数。
配置数据库ODBC数据源_odbc数据源名称怎么填-CSDN博客
3. 可以开始在Python中安装相应的包了,就是pyodbc包,具体操作看这个帖子即可:
很简单,只要有Python的基础知识。
4. OK,最后一步,写Python代码。可以参考第3步帖子内容,也可以参考本帖子的程序。
import pyodbc
conn_str = (
r'Driver={Microsoft Access Driver (*.mdb, *.accdb)};'
r'DBQ=D:\Access\jiaoxueguanli.accdb;'
)
conn = pyodbc.connect(conn_str)
cursor = conn.cursor()
SQL_value = 'select * from student'
cursor.execute(SQL_value)
result = cursor.fetchall()
for row in result:
for i in range(7):
print(row[i], " ", end="")
print()
#print(result)
cursor.close()
conn.close()
最后,说明一下程序中需要注意的关键点。
变量conn_str变量保存的数据库的配置信息,其中r'DBQ=变量保存操作的数据库的存储地址,这个信息需要根据自己的存储地址修改。
SQL语句操作的表student结构如下,3行7列,所以在循环次数,由此决定。如果操作的表结构不一样,需要进行相应的修改。
打完收工,希望您也能一切顺利。