对Python通过pypyodbc访问Access数据库的方法详解


Posted in Python onOctober 27, 2018

看书上通过ODBC访问数据库的案例,想实践一下在Python 3.6.1中实现access2003数据库的链接,但是在导入odbc模块的时候出现了问题,后来查了一些资料就尝试着使用pypyodbc,最后成功了。

操作步骤:

①安装pypyodbc

目前Python安装通常使用steup.py或者pip工具,在python3.4之后的的版本都默认包含了pip,因此,这里推荐使用pip工具。在cmd中执行:pip install pypyodbc,耐心等待执行完成,pypyodbc模块就已经安装成功了。如果提示安装超时或者失败可以重新再执行一次。执行成功后,查看C:\Python36\Lib\site-packages中就会发现多了pypyodbc的目录。这时候就可以使用pypyodbc模块了。

②创建数据源

先利用Access创建一个数据库,我是在D盘中创建了一个名称为addresses.mdb的数据库文件。然后在“控制面板”中找到“管理工具”,打开其中的“数据源(ODBC)”,选择“添加”,并选择“Microsoft Access Driver(*.mdb,*.accdb)”,点击完成。然后输入数据源名“addresses”,并点击“选择”找到在D盘创建的数据库。这样就将数据源创建完成。

对Python通过pypyodbc访问Access数据库的方法详解

对Python通过pypyodbc访问Access数据库的方法详解

对Python通过pypyodbc访问Access数据库的方法详解

对Python通过pypyodbc访问Access数据库的方法详解

③代码部分

import pypyodbc
str = 'Driver={Microsoft Access Driver (*.mdb,*.accdb)};DBQ=D:\\addresses.mdb'
db=pypyodbc.win_connect_mdb(str)     # 打开数据库连接
curser = db.cursor()         # 产生cursor游标
curser.execute("select * from address order by id desc")
for col in curser.description:       # 显示行描述
 print (col[0], col[1])
result = curser.fetchall()
for row in result:          # 输出各字段的值
 print (row)
 print (row[1], row[2])
 timeTuple = time.localtime(row[3])
 print (time.strftime('%Y/%m/%d', timeTuple))

注意事项:

①如果过程中出现下图的情况,注意检查创建数据源过程中的驱动与代码中的Microsoft Access Driver (*.mdb,*.accdb)是否一致。

对Python通过pypyodbc访问Access数据库的方法详解

②注意这里使用的是pypyodbc.win_connect_mdb,如果使用pypyodbc.connect同样会出现:

对Python通过pypyodbc访问Access数据库的方法详解

③如果出现下图的情况,可能是文件已加密,只需要在DBQ前面加上:PWD=YourPWD(文件的密码)

对Python通过pypyodbc访问Access数据库的方法详解

以上这篇对Python通过pypyodbc访问Access数据库的方法详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python动态加载模块的3种方法
Nov 22 Python
Python线程中对join方法的运用的教程
Apr 09 Python
Python3安装Scrapy的方法步骤
Nov 23 Python
pandas使用apply多列生成一列数据的实例
Nov 28 Python
使用Python轻松完成垃圾分类(基于图像识别)
Jul 09 Python
Python使用微信itchat接口实现查看自己微信的信息功能详解
Aug 22 Python
python实现布隆过滤器及原理解析
Dec 08 Python
使用tqdm显示Python代码执行进度功能
Dec 08 Python
Pytorch实现LSTM和GRU示例
Jan 14 Python
tensorboard实现同时显示训练曲线和测试曲线
Jan 21 Python
Python3标准库之threading进程中管理并发操作方法
Mar 30 Python
python基础之类属性和实例属性
Oct 24 Python
Python/ArcPy遍历指定目录中的MDB文件方法
Oct 27 #Python
用Python实现筛选文件脚本的方法
Oct 27 #Python
基于python指定包的安装路径方法
Oct 27 #Python
Python 新建文件夹与复制文件夹内所有内容的方法
Oct 27 #Python
Python利用递归实现文件的复制方法
Oct 27 #Python
python实现本地图片转存并重命名的示例代码
Oct 27 #Python
python将.ppm格式图片转换成.jpg格式文件的方法
Oct 27 #Python
You might like
php生成gif动画的方法
2015/11/05 PHP
thinkphp3.x自定义Action、Model及View的简单实现方法
2016/05/19 PHP
php自定义时间转换函数示例
2016/12/07 PHP
基于php数组中的索引数组和关联数组详解
2018/03/12 PHP
PHP读取文件,解决中文乱码UTF-8的方法分析
2020/01/22 PHP
javascript+xml技术实现分页浏览
2008/07/27 Javascript
IE的有条件注释判定IE版本详解(附实例代码)
2012/01/04 Javascript
THREE.JS入门教程(6)创建自己的全景图实现步骤
2013/01/25 Javascript
jQuery中Dom的基本操作小结
2014/01/23 Javascript
在页面加载完成后通过jquery给多个span赋值
2014/05/21 Javascript
angularjs实现与服务器交互分享
2014/06/24 Javascript
浅谈Node.js中的定时器
2015/06/18 Javascript
jquery插件jquery.nicescroll实现图片无滚动条左右拖拽的方法
2015/08/10 Javascript
JS实现兼容性好,带缓冲的动感网页右键菜单效果
2015/09/18 Javascript
Google 地图获取API Key详细教程
2016/08/06 Javascript
Three.js利用性能插件stats实现性能监听的方法
2017/09/25 Javascript
用vuex写了一个购物车H5页面的示例代码
2018/12/04 Javascript
微信小程序MUI侧滑导航菜单示例(Popup弹出式,左侧不动,右侧滑动)
2019/01/23 Javascript
jquery实现掷骰子小游戏
2019/10/24 jQuery
JS实现多选框的操作
2020/06/24 Javascript
[01:20]DOTA2 齐天大圣至宝动态展示
2016/12/13 DOTA
Python 寻找局部最高点的实现
2019/12/05 Python
python实例化对象的具体方法
2020/06/17 Python
解决python3输入的坑——input()
2020/12/05 Python
10个python爬虫入门基础代码实例 + 1个简单的python爬虫完整实例
2020/12/16 Python
python 如何用urllib与服务端交互(发送和接收数据)
2021/03/04 Python
canvas像素画板的实现代码
2018/11/21 HTML / CSS
飞利浦比利时官方网站:Philips比利时
2016/08/24 全球购物
Tirendo比利时:在线购买轮胎
2018/10/22 全球购物
整个世界的设计师家具在哈恩:Designathome
2019/03/25 全球购物
安全的后院和健身蹦床:JumpSport
2019/07/15 全球购物
化工实习心得体会
2014/09/09 职场文书
高考作弊检讨书1500字
2015/02/16 职场文书
python图像处理基本操作总结(PIL库、Matplotlib及Numpy)
2021/06/08 Python
Mysql事务索引知识汇总
2022/03/17 MySQL
Python中time与datetime模块使用方法详解
2022/03/31 Python