ADO,DAO两种方法批量更新表中数据-杜小杰
Access软件网QQ交流学习群(群号码198465573),欢迎您的加入!
首页 >技术文章> 源码示例


ADO,DAO两种方法批量更新表中数据

发表时间:2011/9/6 评论(4) 浏览(22469)  评论 | 加入收藏 | 复制
   
摘 要:教你学会写ADO,DAO代码访问数据方式,来更新表.
正 文:

点击下载此附件

 

首先引用里要勾选ADO,DAO,没用的话, 注册ADO和DAO

Private Sub 删除_Click()   'SQL方法
    DoCmd.RunSQL "update 表1 set 父级=null,序号=null"
    DoCmd.OpenTable "表1"

End Sub


Private Sub 填充父级_Click()
    Dim rst As DAO.Recordset        'DAO方法
    Set rst = CurrentDb.OpenRecordset("表1", dbOpenDynaset)
    rst.MoveFirst  '使记录的指针指到第一条记录,(当然我们是看不见的,只在于意义上是这样)
    Do Until rst.EOF     '表是当记录代码循环应用计算,直到最后一条记录为止
        rst.Edit
        rst!父级 = "003002"
        rst.Update
        rst.MoveNext
        '并且把记录指针跳转到下一条记录,千万记住这句, _
         否则程序会一直在上面那条记录反复计算,真到你的ACCESS程序死掉, _
         或者你系统由于内存占光而完完,切记切记!!!!!!!!!!!!

    Loop       '重新回到上面那句:  Do Until rs.EOF = True
    rst.Close
    Set rst = Nothing
    '当程序到达这里时,表示上面的记算余额已经完成,我们就要关闭 rs 以省下内存空间
    DoCmd.OpenTable "表1"

End Sub

 


Private Sub 填充序号_Click()    'ADO方法
    Dim Y As Long
    Dim rst As Recordset  '声明设定参数 rs 为 Recordset类型的数据
    Set rst = New ADODB.Recordset  '初始化参数为一个新的ADODB型Recordset
    rst.ActiveConnection = CurrentProject.Connection  '把 rs 参数设定为本数据库,并连接
    rst.Open "表1", , adOpenKeyset, adLockOptimistic  '

    rst.MoveFirst  '使记录的指针指到第一条记录,(当然我们是看不见的,只在于意义上是这样)
    Y = 0
    Do Until rst.EOF     '表是当记录代码循环应用计算,直到最后一条记录为止
        rst!序号 = Format(Y + 1, "000")
        Y = rst!序号
        rst.Update
        rst.MoveNext
        '并且把记录指针跳转到下一条记录,千万记住这句, _
         否则程序会一直在上面那条记录反复计算,真到你的ACCESS程序死掉, _
         或者你系统由于内存占光而完完,切记切记!!!!!!!!!!!!

    Loop       '重新回到上面那句:  Do Until rs.EOF = True
    rst.Close
    Set rst = Nothing
    '当程序到达这里时,表示上面的记算余额已经完成,我们就要关闭 rs 以省下内存空间
    DoCmd.OpenTable "表1"


End Sub

 

 


Access软件网交流QQ群(群号:198465573)
 
 相关文章
【Access入门】通过更新查询将表中空值更新为0值的示例,空值变...  【麥田  2013/4/2】
[ADO教程]用ADO进行切断式操作批量更新  【漏蛧尐魚℡  2013/5/11】
一个简单的更新查询教程  【麥田  2013/5/30】
常见问答
技术分类
相关资源
文章搜索
关于作者

杜小杰

文章分类

文章存档

友情链接