...
strtnmtr = "select * from tnmtr where right(userid,6)='" & Right(rsTNCAL.Fields!userid, 6) & "'" Set rsTNMTR = New ADODB.Recordset
rsTNMTR.CursorLocation = adUseClient
rsTNMTR.CursorType = adOpenStatic
rsTNMTR.LockType = adLockOptimistic
rsTNMTR.Open strtnmtr, MDBConn
...
当运行到这个时候(rsTNMTR.Open strtnmtr, MDBConn) 就会停留几秒 数据也只有20几万条 数据库为ACCESS
我也是需要里面的全部数据 并且还要做循环(根据条件每一条数据就需要打开一次数据库) 这样下来就特别慢
请问各位老鸟,我怎样才能将速度提起来呢(不修改数据库结构的情况下)?
strtnmtr = "select * from tnmtr where right(userid,6)='" & Right(rsTNCAL.Fields!userid, 6) & "'" Set rsTNMTR = New ADODB.Recordset
rsTNMTR.CursorLocation = adUseClient
rsTNMTR.CursorType = adOpenStatic
rsTNMTR.LockType = adLockOptimistic
rsTNMTR.Open strtnmtr, MDBConn
...
当运行到这个时候(rsTNMTR.Open strtnmtr, MDBConn) 就会停留几秒 数据也只有20几万条 数据库为ACCESS
我也是需要里面的全部数据 并且还要做循环(根据条件每一条数据就需要打开一次数据库) 这样下来就特别慢
请问各位老鸟,我怎样才能将速度提起来呢(不修改数据库结构的情况下)?
将数据改为SQL
升级你的电脑来改善.
for ..
...
(这中间也必须打开几张表)
for ..
....
(这中间也必须要打开好几张表.因为对方的数据放的特别乱)
next
next
这样下来将几千条数据 ACCESS转换成DBF 就需要将近15分钟
作循环时(2000次)每次都要停留几秒... 这样下来将近要停留十五分钟这样的速度太慢了 求救....!!!!!
如果实在不行,你先将记录读出来写入一个数组,再判断数组这样也快一点啊