对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多线程学习资料
Dec 19 Python
python网络编程之TCP通信实例和socketserver框架使用例子
Apr 25 Python
详解python3中socket套接字的编码问题解决
Jul 01 Python
Python使用正则表达式过滤或替换HTML标签的方法详解
Sep 25 Python
Python设计模式之MVC模式简单示例
Jan 10 Python
python实现二维插值的三维显示
Dec 17 Python
详解安装mitmproxy以及遇到的坑和简单用法
Jan 21 Python
python使用Plotly绘图工具绘制柱状图
Apr 01 Python
Python中的引用知识点总结
May 20 Python
wxPython色环电阻计算器
Nov 18 Python
Python创建一个元素都为0的列表实例
Nov 28 Python
python add_argument()用法解析
Jan 29 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一些有意思的小区别
2006/12/06 PHP
Windows下利用Gvim写PHP产生中文乱码问题解决方法
2011/04/20 PHP
php file_put_contents()功能函数(集成了fopen、fwrite、fclose)
2011/05/24 PHP
thinkPHP的Html模板标签使用方法
2012/11/13 PHP
php htmlspecialchars()与shtmlspecialchars()函数的深入分析
2013/06/05 PHP
PHP反向代理类代码
2014/08/15 PHP
YII2框架中使用RBAC对模块,控制器,方法的权限控制及规则的使用示例
2020/03/18 PHP
Jquery 表格合并的问题分享
2011/09/17 Javascript
ajax与json 获取数据并在前台使用简单实例
2017/01/19 Javascript
JavaScript中最常见的三个面试题解析
2017/03/04 Javascript
jquery动态添加以及遍历option并获取特定样式名称的option方法
2018/01/29 jQuery
JS实现盒子跟着鼠标移动及键盘方向键控制盒子移动效果示例
2019/01/29 Javascript
vuex 动态注册方法 registerModule的实现
2019/07/03 Javascript
Vue  webpack 项目自动打包压缩成zip文件的方法
2019/07/24 Javascript
Javascript Symbol原理及使用方法解析
2020/10/22 Javascript
python黑魔法之参数传递
2016/02/12 Python
Python面向对象编程基础解析(二)
2017/10/26 Python
浅析Python与Mongodb数据库之间的操作方法
2019/07/01 Python
浅析Django中关于session的使用
2019/12/30 Python
2分钟教你实现环形/扇形菜单(基础版)
2020/01/15 HTML / CSS
Expedia意大利旅游网站:酒店、机票和租车预订
2017/10/30 全球购物
台湾最大网路书店:博客来
2018/03/18 全球购物
印尼网上商店:Alfacart.com
2019/03/11 全球购物
英国领先的维生素和补充剂品牌:Higher Nature
2019/08/26 全球购物
优秀实习自我鉴定
2013/12/04 职场文书
基本公共卫生服务健康教育工作方案
2014/05/22 职场文书
工厂仓管员岗位职责范本
2014/07/17 职场文书
公务员群众路线专题民主生活会发言材料
2014/09/17 职场文书
电影焦裕禄观后感
2015/06/09 职场文书
停车场管理制度范本
2015/08/05 职场文书
2015年大学组织委员个人工作总结
2015/10/23 职场文书
图解上海144收音机
2021/04/22 无线电
死磕 java同步系列之synchronized解析
2021/06/28 Java/Android
深入讲解数据库中Decimal类型的使用以及实现方法
2022/02/15 MySQL
Python的代理类实现,控制访问和修改属性的权限你都了解吗
2022/03/21 Python
CKAD认证中部署k8s并配置Calico插件
2022/03/31 Servers