Python连接Access07并操作数据库

具体方法如下:

###第一步:连接数据库,打开相应表
import win32com.client #引入win32
conn = win32com.client.Dispatch(r"ADODB.Connection") #通过win32连接用于数据库操作的ADODB库
DSN = 'Provider=Microsoft.ACE.OLEDB.12.0;Data Source=ex15ConnectAccess_DataIn.accdb;Persist Security Info=False;' #此处data Source出更换为自己的库名
                                                                                                             #Access03版后缀为mdb,语句略有不同请自查
conn.Open(DSN)  #打开自己的数据库

rs = win32com.client.Dispatch(r'ADODB.Recordset')
rs_name = 'Ls_table'  #需要操作的表名
rs.Open('[' + rs_name + ']', conn, 1, 3)  #打开工作表

###第二步:对表进行操作
# 增
# sql = "Insert Into ["+rs_name+"] (xuhao, cpbm,xlxh) Values ('2', '编码','型号AV')" #sql语句
# conn.Execute(sql) #执行sql语句

# 删
# sql = "Delete * FROM " + rs_name + " where id = 203"
# conn.Execute(sql)

# # 改
# sql = "Update " + rs_name + " Set cpxh = 'CP2019' where xuhao = 2"
# conn.Execute(sql)

#查
rs.MoveFirst() #光标移到首条记录
count = 0
while True:
    if rs.EOF: #EOF为判断是否整个数据表的结尾(此处不太确定,希望探讨)
        break
    else:
        for i in range(rs.Fields.Count-6):  #rs.Fields.Count为表中字段个数
            #字段名:字段内容
            print(rs.Fields[i].Name, ":", rs.Fields[i].Value) #rs.Fields[i].Name该行中第i个字段的名字;rs.Fields[i].Value该行中第i个字段的值
            count += 1
        rs.MoveNext()  #移到下条数据进行读取

###第三步:关闭数据库
conn.close  #关闭数据库,注意,close后面不能加括号

你可能感兴趣的:(软件类)