导航整个 DAO 记录集-杨雪
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> Access数据库-模块/函数/VBA


导航整个 DAO 记录集

发表时间:2021/12/17 19:43:02 评论(0) 浏览(2012)  评论 | 加入收藏 | 复制
   
摘 要:导航整个 DAO 记录集示例。
正 文:
      Recordset 对象通常具有当前位置,通常位于记录处。 引用 Recordset 中的字段时,将从当前位置的记录中获取值,该记录称为当前记录。 但是,当前位置也可以是紧靠 Recordset 中第一条记录之前的位置,或紧靠最后一条记录之后的位置。 在某些情况下,当前位置未定义。

可以使用以下 Move 方法循环浏览 Recordset 中的记录:

MoveFirst 方法用于移动到第一条记录。

MoveLast 方法用于移动到最后一个记录。

MoveNext 方法用于移动到下一个记录。

MovePrevious 方法用于移动到上一个记录。

Move 方法用于向前或向后移动您在其语法中指定的记录数。

      可以对表类型、动态集类型和快照类型的 Recordset 对象使用上述方法中的任何一个。 在仅向前类型的 Recordset 对象上,您只能使用 MoveNext 和 Move 方法。 如果在仅向前类型 Recordset 上使用 Move 方法,则指定要移动的行数的参数必须是正整数。

      以下代码示例在包含所有记录(这些记录在 ReportsTo 字段中具有 Null 值)的 Employees 表上打开 Recordset 对象。 函数随后将更新记录以指明这些员工是临时员工。 对于 Recordset 中的每个记录,该示例都会更改 Title 和 Notes 字段,并使用 Update 方法保存更改。 该示例使用 MoveNext 方法移动到下一个记录。
Sub UpdateEmployees() 
 
Dim dbsNorthwind As DAO.Database 
Dim rstEmployees As DAO.Recordset 
Dim strSQL As String 
Dim intI As Integer 
 
On Error GoTo ErrorHandler 
 
   Set dbsNorthwind = CurrentDb 
 
   ' 在employee表中的所有记录上打开一个记录集
   ' ReportsTo字段中的空值 
   strSQL = "Select * FROM Employees Where ReportsTo IS NULL" 
   Set rstEmployees = dbsNorthwind.OpenRecordset(strSQL, dbOpenDynaset) 
 
   '如果记录集为空,则退出 
   If rstEmployees.EOF Then Exit Sub 
 
   intI = 1 
   With rstEmployees 
      Do Until .EOF 
         .Edit 
         ![ReportsTo] = 5 
         ![Title] = "Temporary" 
         ![Notes] = rstEmployees![Notes] & "Temp #" & intI 
         .Update 
         .MoveNext 
         intI = intI + 1 
      Loop 
   End With 
 
   RstEmployees.Close 
   dbsNorthwind.Close 
 
   Set rstEmployees = Nothing 
   Set dbsNorthwind = Nothing 
 
   Exit Sub 
 
ErrorHandler: 
   MsgBox "Error #: " & Err.Number & vbCrLf & vbCrLf & Err.Description 
End Sub


备   注:
上一个示例仅用于阐明 Update 和 MoveNext 方法。 为了获得最佳性能,建议使用 SQL Update 查询执行此批量操作。

Access软件网交流QQ群(群号:198465573)
 
 相关文章
DAO记录集使用的一些技巧  【红尘如烟  2010/9/16】
用DAO记录集方法计算并修改表中多条记录多个字段值的示例  【牛魔王  2014/1/19】
对DAO记录集RecordCount属性的工作机制及其应用探讨  【cspa  2014/8/4】
导出至Excel系列方法七ADO/DAO循环记录集导出  【金宇  2019/10/22】
根据查询创建 DAO 记录集  【杨雪  2020/5/9】
DAO打开记录集的三种类型解释  【张志  2021/3/27】
通过编写SQL来引用指定记录集  【杨雪  2021/7/23】
通过 DAO 记录集返回随机记录  【杨雪  2021/8/27】
常见问答
技术分类
相关资源
文章搜索
关于作者

杨雪

文章分类

文章存档

友情链接