Filter与updatebatch混合使用实现批量更新

发表于:2007-06-30来源:作者:点击数: 标签:
/*******部分代码*******/ /*******idArr()和codeArr()为两个数组,其中,idArr()为filter数据过滤条件,codeArr()作为更新数据**********/ ....... dim CRs,sql,FStr sql= conn.begintrans set CRs=server.CreateObject(adodb.recordset) CRs.ActiveConnecti
/*******部分代码*******/
/*******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) :当前所有数据***************/

原文转自:http://www.ltesting.net