Python操作Access數(shù)據(jù)庫基本操作步驟分析
Python編程語言的出現(xiàn),帶給開發(fā)人員非常大的好處。我們可以利用這樣一款功能強(qiáng)大的面向?qū)ο箝_源語言來輕松的實(shí)現(xiàn)許多特定功能需求。比如Python操作Access數(shù)據(jù)庫的功能實(shí)現(xiàn)等等。在Python操作Access數(shù)據(jù)庫之前,首先,你應(yīng)安裝了Python和Python for Windows extensions。
Python操作Access數(shù)據(jù)庫步驟之1、建立數(shù)據(jù)庫連接
- 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)
 
Python操作Access數(shù)據(jù)庫步驟之2、打開一個(gè)記錄集
- rs = win32com.client.Dispatch(r'ADODB.Recordset')
 - rs_name = 'MyRecordset'#表名
 - rs.Open('[' + rs_name + ']', conn, 1, 3)
 
Python操作Access數(shù)據(jù)庫步驟之3、對(duì)記錄集操作
- rs.AddNew()
 - rs.Fields.Item(1).Value = 'data'
 - rs.Update()
 
Python操作Access數(shù)據(jù)庫步驟之4、用SQL來插入或更新數(shù)據(jù)
- 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()
 
Python操作Access數(shù)據(jù)庫步驟之5、遍歷記錄
- rs.MoveFirst()
 - count = 0
 - while 1:
 - if rs.EOF:
 - break
 - else:
 - countcount = count + 1
 - rs.MoveNext()
 
注意:如果一個(gè)記錄是空的,那么將指針移動(dòng)到第一個(gè)記錄將導(dǎo)致一個(gè)錯(cuò)誤,因?yàn)榇藭r(shí)recordcount是無效的。解決的方法是:打開一個(gè)記錄集之前,先將Cursorlocation設(shè)置為3,然后再打開記錄集,此時(shí)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
 
以上就是我們對(duì)Python操作Access數(shù)據(jù)庫步驟的相關(guān)介紹。
【編輯推薦】















 
 
 

 
 
 
 