标题:ADO中记录集的update方法一次只能更新记录集中的一条记录吗?
只看楼主
zyxyklh
Rank: 1
来 自:学校
等 级:新手上路
帖 子:18
专家分:0
注 册:2008-7-8
结帖率:100%
已结贴  问题点数:20 回复次数:3 
ADO中记录集的update方法一次只能更新记录集中的一条记录吗?
ADO中记录集的update方法一次只能更新记录集中的一条记录吗?

像这样写就是对的:
Private Sub Command0_Click()
  Dim rst As DAO.Recordset
  Set rst = CurrentDb.OpenRecordset("tbl单位信息")
  rst.Edit
  rst.MoveFirst
  Do While Not rst.EOF
    rst!学校联系人 = "大嘴猴"
    rst.MoveNext
  Loop
  rst.Update
  rst.Close
End Sub

这样写却不行:
Private Sub Command0_Click()
  Dim rst As DAO.Recordset
  Set rst = CurrentDb.OpenRecordset("tbl单位信息")
  rst.Edit
  rst.MoveFirst
  Do While Not rst.EOF
    rst!学校联系人 = "大嘴猴"
    rst.MoveNext
  Loop
  rst.Update
  rst.Close
End Sub

是不是update方法一次只能更新记录集中的一条记录?
搜索更多相关主题的帖子: update 方法 Sub 新记录 记录 
2023-04-22 20:02
厨师王德榜
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:183
帖 子:942
专家分:4724
注 册:2013-2-16
得分:20 
这个Edit的操作是针对单条、当前数据进行操作的.所以要改为
  Do While Not rst.EOF
    rst.Edit
    rst!学校联系人 = "大嘴猴1"
    rst.Update
    rst.MoveNext
  Loop
循环体外的 rst.Edit 和 rst.Update 两句注释掉.

[此贴子已经被作者于2023-4-24 14:29编辑过]

2023-04-24 14:20
厨师王德榜
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:183
帖 子:942
专家分:4724
注 册:2013-2-16
得分:0 
如果不想这样一笔笔遍历,那就用SQL语句 :
Dim qstr As String

qstr = "Update tbl单位信息 set [学校联系人]='大嘴猴' where 1=1"
CurrentDb.Execute qstr
2023-04-24 14:28
zyxyklh
Rank: 1
来 自:学校
等 级:新手上路
帖 子:18
专家分:0
注 册:2008-7-8
得分:0 
回复 2楼 厨师王德榜
"这个Edit的操作是针对单条、当前数据进行操作的"——我明白了,非常感谢!
2023-04-26 11:29



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-512007-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.911971 second(s), 10 queries.
Copyright©2004-2025, BCCN.NET, All Rights Reserved