使用Python对Access读写操作

学习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()

posted @ 2018-04-26 13:33  攻城獅  阅读(3052)  评论(0编辑  收藏  举报