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