Filter与updatebatch混合使用实现批量更新(原创)

作者:袖梨 2022-06-30
/*******部分代码*******/
/*******idArr()和codeArr()为两个数组,其中,idArr()为filter数据过滤条件,codeArr()作为更新数据**********/
.......
    dim CRs,sql,FStr
    sql=""
    
    conn.begintrans
    set CRs=server.CreateObject("adodb.recordset")
    CRs.ActiveConnection=conn
    CRs.CursorType=1
    CRs.LockType=3
    CRs.Source="select * from MB_DCManage"
    CRs.Open
    for i=0 to ubound(codeArr)-1
    FStr="DCM_ID="&idArr(i)    '定义数据过滤
    CRs.Filter=FStr       
    CRs("DCM_Code")=codeArr(i)
    next
    CRs.UpdateBatch(3)        '批量更新
........
/***********避免重复的进行open操作,但是filter本身也有效率问题;应该结合事务处理;filter可进行多条件选择;updateBatch各参数-----adAffectCurrent(1):当前位置;
    adAffectGroup(2)    :符合filter的数据
    adAffterAll(3)    :当前所有数据***************/

相关文章

精彩推荐