Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > 源码示例

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

时 间:2011-09-06 00:00:00
作 者:风行   ID:16058  城市:江阴
摘 要:教你学会写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交流群 (群号:54525238)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助