使用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"

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

猜你喜欢

转载自www.cnblogs.com/Javauser/p/8951792.html