Python操作Access数据库基本步骤分析

945次阅读  |  发布于5年以前

本文实例分析了Python操作Access数据库基本步骤。分享给大家供大家参考,具体如下:

Python编程语言的出现,带给开发人员非常大的好处。我们可以利用这样一款功能强大的面向对象开源语言来轻松的实现许多特定功能需求。比如Python操作Access数据库的功能实现等等。在Python操作Access数据库之前,首先,你应安装了Python和Python for Windows extensions。

步骤之1、建立数据库连接


    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)

步骤之2、打开一个记录集


    rs = win32com.client.Dispatch(r'ADODB.Recordset')
    rs_name = 'MyRecordset'#表名
    rs.Open('[' + rs_name + ']', conn, 1, 3)

步骤之3、对记录集操作


    rs.AddNew()
    rs.Fields.Item(1).Value = 'data'
    rs.Update()

步骤之4、用SQL来插入或更新数据


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

步骤之5、遍历记录


    rs.MoveFirst()
    count = 0
    while 1:
    if rs.EOF:
    break
    else:
    countcount = count + 1
    rs.MoveNext()

注意:如果一个记录是空的,那么将指针移动到第一个记录将导致一个错误,因为此时recordcount是无效的。解决的方法是:打开一个记录集之前,先将Cursorlocation设置为3,然后再打开记录集,此时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

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python常见数据库操作技巧汇总》、《Python+MySQL数据库程序设计入门教程》、《Python图片操作技巧总结》、《Python数据结构与算法教程》、《Python Socket编程技巧总结》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总

希望本文所述对大家Python程序设计有所帮助。

Copyright© 2013-2020

All Rights Reserved 京ICP备2023019179号-8