以文本方式查看主题

-  Foxtable(狐表)  (http://www.foxtable.com/bbs/index.asp)
--  专家坐堂  (http://www.foxtable.com/bbs/list.asp?boardid=2)
----  Datable记录未更新,进行筛选会很卡?  (http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=38814)

--  作者:longtechwj
--  发布时间:2013/8/7 18:27:00
--  Datable记录未更新,进行筛选会很卡?
Datable记录未更新,进行筛选会很卡?我对未更新的记录进行筛选,很慢,最多的时候卡了一个小时
--  作者:有点甜
--  发布时间:2013/8/7 19:09:00
--  
 不太可能,是否相关代码的问题?

 数据量有多少?是否更新以后就不会卡?

 最好有具体的图片和例子。

--  作者:longtechwj
--  发布时间:2013/8/7 19:11:00
--  
5.6W,不是太多,并且都有建索引的
--  作者:longtechwj
--  发布时间:2013/8/7 19:26:00
--  

是这样的,一开始我有改变datatable中的数据,然后进行保存,然后再次改变datatable数据就很卡,但是退出窗体之后打开再次修改datatable中的数据就不会出现这种情况,估计是内存没有得到释放,我看了一下我第二次修改数据的时候CPU都达到峰值了,70%以上


--  作者:有点甜
--  发布时间:2013/8/7 19:31:00
--  
5.6万的数据修改以后保存卡是有一些的,但不至于1小时。

是否写有相关事件的代码,触发了某些事件导致变慢。

数据量大的时候,建议使用动态加载的方法。


--  作者:longtechwj
--  发布时间:2013/8/8 8:31:00
--  

那有没有代码可以把表清空,然后在重新加载数据,不知道可不可以,我在加载之后有调用过整个datatable的save好像是不可以的,


--  作者:longtechwj
--  发布时间:2013/8/8 8:45:00
--  

我就是用了一个foreach遍历datatable中所有的数据行,然后有修改数据行,进行逐行保存,估计是这个有问题的

   DataTables("PRWIRD").LoadFilter = "POSTED = 1 AND FINISHED = 0 AND [Assign_Qty] > 0 And [LOC_FROM] = \'" & hrec("LOC_FROM") & "\' AND [LOC_TO] = \'" & hrec("LOC_TO") & "\'"
        DataTables("PRWIRD").Load


--  作者:狐狸爸爸
--  发布时间:2013/8/8 9:04:00
--  

呵呵,远程的时候,要修改几万行数据后保存,肯定很慢的。

不过又有多少时候,会一次修改这么多行呢?

如果大批量修改数据,建议字节用sql语句批量修改,或者在服务器端运行程序修改。


--  作者:longtechwj
--  发布时间:2013/8/8 9:52:00
--  
是的,不可能我会全部更改,我在修改之前load一次,因为我要取最新的数据,然后做完之后再次load的时候发现_sortkey全部乱了,可能就是我卡的原因吧
--  作者:Bin
--  发布时间:2013/8/8 14:03:00
--  
几万行还是用分页加载比较好吧.