码迷,mamicode.com
首页 > 数据库 > 详细

使用Python对Access读写操作

时间:2018-04-26 14:07:47      阅读:214      评论:0      收藏:0      [点我收藏+]

标签:建立数据库   else   组件   OLE   com组件   access   第一个   lin   exec   

学习Python的过程中,我们会遇到Access的读写问题,这时我们可以利用win32.client模块的COM组件访问功能,通过ADODB操作Access的文件。
1、导入模块
  1. import win32com.client
2、建立数据库连接
  1. conn = win32com.client.Dispatch(r"ADODB.Connection")
  2. DSN = ‘PROVIDER = Microsoft.Jet.OLEDB.4.0;DATA SOURCE = test.mdb‘
  3. conn.Open(DSN)
3、打开一个记录集
  1. rs = win32com.client.Dispatch(r‘ADODB.Recordset‘)
  2. rs_name = ‘MEETING_PAPER_INFO‘
  3. rs.Open(‘[‘ + rs_name + ‘]‘, conn, 1, 3)
4、对记录集操作
  1. rs.AddNew() #添加一条新记录
  2. rs.Fields.Item(0).Value = "data" #新记录的第一个记录为"data"
  3. rs.Update() #更新
5、用SQL语句来增、删、改数据
  1. # 增
  2. sql = "Insert Into [rs_name] (id, innerserial, mid) Values (‘002133800088980002‘, 2, ‘21338‘)" #sql语句
  3. conn.Execute(sql) #执行sql语句
  4. # 删
  5. sql = "Delete * FROM " + rs_name + " where innerserial = 2"
  6. conn.Execute(sql)
  7. # 改
  8. sql = "Update " + rs_name + " Set mid = 2016 where innerserial = 3"
  9. conn.Execute(sql)
6、遍历记录
  1. rs.MoveFirst() #光标移到首条记录
  2. count = 0
  3. while True:
  4.  if rs.EOF:
  5.  break
  6.  else:
  7.  for i in range(rs.Fields.Count):
  8.   #字段名:字段内容
  9.   print(rs.Fields[i].Name, ":", rs.Fields[i].Value)
  10.  count += 1
  11.  rs.MoveNext()
7、关闭数据库
  1. conn.close()

使用Python对Access读写操作

标签:建立数据库   else   组件   OLE   com组件   access   第一个   lin   exec   

原文地址:https://www.cnblogs.com/Javauser/p/8951818.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!