对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 字典与字符串的互转实例
Jan 13 Python
JSON文件及Python对JSON文件的读写操作
Oct 07 Python
python函数的万能参数传参详解
Jul 26 Python
Python 字符串、列表、元组的截取与切片操作示例
Sep 17 Python
Python坐标线性插值应用实现
Nov 13 Python
PyCharm使用Docker镜像搭建Python开发环境
Dec 26 Python
Python实现列表中非负数保留,负数转化为指定的数值方式
Jun 04 Python
Python StringIO及BytesIO包使用方法解析
Jun 15 Python
pytorch  网络参数 weight bias 初始化详解
Jun 24 Python
python3.7 openpyxl 在excel单元格中写入数据实例
Sep 01 Python
python中的垃圾回收(GC)机制
Sep 21 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
Jan 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
正义联盟的终局之战《天启星战争》将成为DC动画宇宙的最后一部
2020/04/09 欧美动漫
PHPStorm+XDebug进行调试图文教程
2016/06/13 PHP
基于Jquery的简单图片切换效果
2011/01/06 Javascript
js/html光标定位的实现代码
2013/09/23 Javascript
jQuery中die()方法用法实例
2015/01/19 Javascript
jQuery使用hide方法隐藏页面上指定元素的方法
2015/03/30 Javascript
使用canvas实现仿新浪微博头像截取上传功能
2015/09/02 Javascript
jquery实现树形菜单完整代码
2015/12/29 Javascript
使用vue编写一个点击数字计时小游戏
2016/08/31 Javascript
解决vue里碰到 $refs 的问题的方法
2017/07/13 Javascript
Form表单上传文件(type="file")的使用
2017/08/03 Javascript
ionic3 懒加载
2017/08/16 Javascript
VsCode插件整理(小结)
2017/09/14 Javascript
使用Vue做一个简单的todo应用的三种方式的示例代码
2018/10/20 Javascript
iview tabs 顶部导航栏和模块切换栏的示例代码
2019/03/04 Javascript
vue弹出框组件封装实例代码
2019/10/31 Javascript
微信小程序自定义导航栏(模板化)
2019/11/15 Javascript
JavaScript进阶(四)原型与原型链用法实例分析
2020/05/09 Javascript
基于vue+element实现全局loading过程详解
2020/07/10 Javascript
JQuery绑定事件四种实现方法解析
2020/12/02 jQuery
Python基于动态规划算法解决01背包问题实例
2017/12/06 Python
Python图像处理之简单画板实现方法示例
2018/08/30 Python
python爬虫请求头设置代码
2020/07/28 Python
Python3+Django get/post请求实现教程详解
2021/02/16 Python
CSS3实现全景图特效示例代码
2018/03/26 HTML / CSS
Html5 滚动穿透的方法
2019/05/13 HTML / CSS
马来西亚最好的婴儿商店:Motherhood
2017/09/14 全球购物
大学毕业生通用自我评价
2014/01/05 职场文书
纺织工程专业个人求职信范文
2014/01/27 职场文书
厂长岗位职责
2014/02/19 职场文书
继承公证书
2014/04/09 职场文书
英语教师自荐信
2014/05/26 职场文书
领导班子四风表现材料
2014/08/23 职场文书
2014年维修电工工作总结
2014/11/20 职场文书
六年级小学生评语
2014/12/26 职场文书
酒店员工辞职信范文
2015/02/28 职场文书