对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 set集合类型操作总结
Nov 07 Python
Python批量修改文本文件内容的方法
Apr 29 Python
一个基于flask的web应用诞生(1)
Apr 11 Python
python select.select模块通信全过程解析
Sep 20 Python
在python带权重的列表中随机取值的方法
Jan 23 Python
python定时任务 sched模块用法实例
Nov 04 Python
Python 余弦相似度与皮尔逊相关系数 计算实例
Dec 23 Python
python的help函数如何使用
Jun 11 Python
Python如何自动获取目标网站最新通知
Jun 18 Python
python解包用法详解
Feb 17 Python
python实现图片批量压缩
Apr 24 Python
pandas中DataFrame检测重复值的实现
May 26 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 MySQL与分页效率
2008/06/04 PHP
php中取得URL的根域名的代码
2011/03/23 PHP
php实现简单加入购物车功能
2017/03/07 PHP
PHP实现合并两个排序链表的方法
2018/01/19 PHP
Laravel 集成微信用户登录和绑定的实现
2019/12/27 PHP
php设计模式之代理模式分析【星际争霸游戏案例】
2020/03/23 PHP
use jscript Create a SQL Server database
2007/06/16 Javascript
JavaScript高级程序设计 XML、Ajax 学习笔记
2011/09/10 Javascript
jquery统计复选框选中示例
2013/11/05 Javascript
100个不能错过的实用JS自定义函数
2014/03/05 Javascript
JavaScript学习笔记之基础语法
2015/01/22 Javascript
js实现的后台左侧管理菜单代码
2015/09/11 Javascript
详解JavaScript表单验证(E-mail 验证)
2016/03/31 Javascript
AngularJS ng-bind-html 指令详解及实例代码
2016/07/30 Javascript
Wireshark基本介绍和学习TCP三次握手
2016/08/15 Javascript
JQ图片文件上传之前预览功能的简单实例(分享)
2017/11/12 Javascript
解决vue动态为数据添加新属性遇到的问题
2018/09/18 Javascript
JavaScript键盘事件常见用法实例分析
2019/01/03 Javascript
react配置antd按需加载的使用
2019/02/11 Javascript
js表达式与运算符简单操作示例
2020/02/15 Javascript
如何在JavaScript中创建具有多个空格的字符串?
2020/02/23 Javascript
python 巧用正则寻找字符串中的特定字符的位置方法
2018/05/02 Python
Python中偏函数用法示例
2018/06/07 Python
在python里协程使用同步锁Lock的实例
2019/02/19 Python
python itchat给指定联系人发消息的方法
2019/06/11 Python
Django 用户认证组件使用详解
2019/07/23 Python
用Python抢火车票的简单小程序实现解析
2019/08/14 Python
python在一个范围内取随机数的简单实例
2020/08/16 Python
python 多线程共享全局变量的优劣
2020/09/24 Python
Python实现定时监测网站运行状态的示例代码
2020/09/30 Python
来自圣地亚哥的实惠太阳镜:Knockaround
2018/08/27 全球购物
意大利火车票和铁路通行证专家:ItaliaRail
2019/01/22 全球购物
应届生船舶驾驶求职信
2013/10/19 职场文书
政府信息公开实施方案
2014/05/09 职场文书
基层党员干部四风问题整改方向和措施
2014/09/25 职场文书
Redisson实现Redis分布式锁的几种方式
2021/08/07 Redis