Python操作Access数据库基本步骤分析


Posted in Python onSeptember 19, 2016

本文实例分析了Python操作Access数据库基本步骤。分享给大家供大家参考,具体如下:

Python编程语言的出现,带给开发人员非常大的好处。我们可以利用这样一款功能强大的面向对象开源语言来轻松的实现许多特定功能需求。比如Python操作Access数据库的功能实现等等。在Python操作Access数据库之前,首先,你应安装了Python和Python for Windows extensions。

步骤之1、建立数据库连接

import win32com.client
conn = win32com.client.Dispatch(r'ADODB.Connection')
DSN = 'PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=C:/MyDB.mdb;'
conn.Open(DSN)

步骤之2、打开一个记录集

rs = win32com.client.Dispatch(r'ADODB.Recordset')
rs_name = 'MyRecordset'#表名
rs.Open('[' + rs_name + ']', conn, 1, 3)

步骤之3、对记录集操作

rs.AddNew()
rs.Fields.Item(1).Value = 'data'
rs.Update()

步骤之4、用SQL来插入或更新数据

conn = win32com.client.Dispatch(r'ADODB.Connection')
DSN = 'PROVIDER=Microsoft.Jet.OLEDB.4.0;DATA SOURCE=C:/MyDB.mdb;'
sql_statement = "Insert INTO [Table_Name] ([Field_1],
[Field_2]) VALUES ('data1', 'data2')"
conn.Open(DSN)
conn.Execute(sql_statement)
conn.Close()

步骤之5、遍历记录

rs.MoveFirst()
count = 0
while 1:
if rs.EOF:
break
else:
countcount = count + 1
rs.MoveNext()

注意:如果一个记录是空的,那么将指针移动到第一个记录将导致一个错误,因为此时recordcount是无效的。解决的方法是:打开一个记录集之前,先将Cursorlocation设置为3,然后再打开记录集,此时recordcount将是有效的。例如:

rs.Cursorlocation = 3 # don't use parenthesis here
rs.Open('Select * FROM [Table_Name]', conn) # be sure conn is open
rs.RecordCount # no parenthesis here either

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python中使用PyQt把网页转换成PDF操作代码实例
Apr 23 Python
详解Python中for循环的使用方法
May 14 Python
python导入时小括号大作用
Jan 10 Python
python使用锁访问共享变量实例解析
Feb 08 Python
Python实现按照指定要求逆序输出一个数字的方法
Apr 19 Python
django框架模板中定义变量(set variable in django template)的方法分析
Jun 24 Python
详解Python中的正斜杠与反斜杠
Aug 09 Python
python requests抓取one推送文字和图片代码实例
Nov 04 Python
django连接mysql数据库及建表操作实例详解
Dec 10 Python
基于python3的socket聊天编程
Feb 17 Python
Python实现自动签到脚本的示例代码
Aug 19 Python
Python实现科学占卜 让视频自动打码
Apr 09 Python
Python自定义主从分布式架构实例分析
Sep 19 #Python
Python实现网络端口转发和重定向的方法
Sep 19 #Python
Python中__init__.py文件的作用详解
Sep 18 #Python
Python简单遍历字典及删除元素的方法
Sep 18 #Python
Python实现压缩与解压gzip大文件的方法
Sep 18 #Python
Python打包文件夹的方法小结(zip,tar,tar.gz等)
Sep 18 #Python
Python简单格式化时间的方法【strftime函数】
Sep 18 #Python
You might like
php pcntl_fork和pcntl_fork 的用法
2009/04/13 PHP
php 文件上传系统手记
2009/10/26 PHP
解析PayPal支付接口的PHP开发方式
2010/11/28 PHP
php smarty 二级分类代码和模版循环例子
2011/06/16 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
2018/06/16 PHP
php 使用expat方式解析xml文件操作示例
2019/11/26 PHP
关于juqery radio写法的兼容性问题(新老版本jquery)
2010/06/14 Javascript
用jQuery模拟页面加载进度条的实现代码
2011/12/19 Javascript
基于jquery的固定表头和列头的代码
2012/05/03 Javascript
使用jQuery时Form表单元素ID和name命名大忌
2014/03/06 Javascript
JS 打印界面的CSS居中代码适用所有浏览器
2014/03/19 Javascript
js分页工具实例
2015/01/28 Javascript
window.location.hash知识汇总
2015/11/09 Javascript
全面解析Javascript无限添加QQ好友原理
2016/06/15 Javascript
Javascript实现前端简单的路由实例
2016/09/11 Javascript
AngularJS 在同一个界面启动多个ng-app应用模块详解
2016/12/20 Javascript
vue2 中如何实现动态表单增删改查实例
2017/06/09 Javascript
在 Angular 中使用Chart.js 和 ng2-charts的示例代码
2017/08/17 Javascript
浅谈使用mpvue开发小程序需要注意和了解的知识点
2018/05/23 Javascript
Bootstrap Table中的多选框删除功能
2018/07/15 Javascript
ios设备中angularjs无法改变页面title的解决方法
2018/09/13 Javascript
详解javascript对数组和json数组的操作
2019/04/15 Javascript
js时间戳转yyyy-MM-dd HH-mm-ss工具类详解
2019/04/30 Javascript
js实现简单放大镜效果
2020/03/07 Javascript
react基本安装与测试示例
2020/04/27 Javascript
通过实例了解Render Props回调地狱解决方案
2020/11/04 Javascript
vue element实现表格合并行数据
2020/11/30 Vue.js
python网络编程学习笔记(七):HTML和XHTML解析(HTMLParser、BeautifulSoup)
2014/06/09 Python
Python图算法实例分析
2016/08/13 Python
python3大文件解压和基本操作
2017/12/15 Python
pandas中的ExcelWriter和ExcelFile的实现方法
2020/04/24 Python
网络通讯中,端口有什么含义,端口的取值范围
2012/11/23 面试题
《小草和大树》教学反思
2014/02/16 职场文书
工商治理实习生的自我评价分享
2014/02/20 职场文书
党支部活动策划方案
2014/08/18 职场文书
JPA 通过Specification如何实现复杂查询
2021/11/23 Java/Android