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


批量更改 DAO 记录集

发表时间:2022/1/22 9:10:37 评论(0) 浏览(2293)  评论 | 加入收藏 | 复制
   
摘 要:创建表类型或记录集类型的 Recordset 对象后,可以更改、删除或添加新记录。 不能在快照类型或仅向前类型的 Recordset 对象中更改、删除或添加记录。
正 文:

      在循环中执行的许多更改都可以通过使用 SQL 中的更新或删除查询来更有效地完成。

      下面的示例创建一个 QueryDef 对象来更新 Employees 表,然后运行查询。

Dim dbsNorthwind As DAO.Database 
Dim qdfChangeTitles As DAO.QueryDef 
 
   Set dbsNorthwind = CurrentDb 
   Set qdfChangeTitles = dbsNorthwind.CreateQueryDef("") 
 
   qdfChangeTitles.SQL = "Update Employees SET Title = " & _ 
                         "'Account Executive' Where Title = " & _ 
                         "'Sales Representative'" 
 
   ' 调用查询. 
   qdfChangeTitles.Execute dbFailOnError 


      您可以将本示例中的整个 SQL 字符串替换为存储的参数查询,在这种情况下,过程会提示用户输入参数值。 以下示例演示如何将上一个示例重写为存储参数查询。

Dim dbsNorthwind As DAO.Database 
Dim qdfChangeTitles As DAO.QueryDef 
Dim strSQLUpdate As String 
Dim strOld As String 
Dim strNew As String 
 
   Set dbsNorthwind = CurrentDb 
 
   strSQLUpdate = "PARAMETERS [Old Title] Text, [New Title] Text; " & _ 
                  "Update Employees SET Title = [New Title] Where " & _ 
                  "Title = [Old Title]" 
 
   ' 创建未存储的 QueryDef 对象. 
   Set qdfChangeTitles = dbsNorthwind.CreateQueryDef("", strSQLUpdate) 
 
   ' 提示旧标题. 
   strOld = InputBox("Enter old job title:") 
 
   ' 提示新标题. 
   strNew = InputBox("Enter new job title:") 
 
   ' 设置参数. 
   qdfChangeTitles.Parameters("Old Title") = strOld 
   qdfChangeTitles.Parameters("New Title") = strNew 
 
   '调用查询. 
   qdfChangeTitles.Execute 

Access软件网交流QQ群(群号:198465573)
 
 相关文章
根据查询创建 DAO 记录集  【杨雪  2020/5/9】
【Access源码示例】导入系列-Excel之ADO记录集方法  【金宇  2020/8/11】
DAO打开记录集的三种类型解释  【张志  2021/3/27】
通过编写SQL来引用指定记录集  【杨雪  2021/7/23】
通过 DAO 记录集返回随机记录  【杨雪  2021/8/27】
导航整个 DAO 记录集  【杨雪  2021/12/17】
对 DAO 记录集中的数据进行排序  【杨雪  2022/1/8】
常见问答
技术分类
相关资源
文章搜索
关于作者

杨雪

文章分类

文章存档

友情链接