以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 代码执行速度慢 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=49429) |
-- 作者:kmzb56 -- 发布时间:2014/4/17 17:47:00 -- 代码执行速度慢 表A与表B关每联,B有做在窗口上的副表上,用 If e.Table.Current Is Nothing Then \'如果Current为Nothing Return \'则返回 End If Dim wz As Integer Dim dr As DataRow dr = DataTables("业务登记").Find("[序号2] = \'" & e.Table.Current("序号") & "\'") If dr IsNot Nothing Then wz = Tables("任务查询_table1").FindRow(dr) If wz >= 0 Then Tables("任务查询_table1").Position = wz End If End If 执行时,效果有时很慢,可否有改善办法,有时要一个一个逐步查,要等好久,有时又一下查到了,不知什么原因?有其它办法没?
|
-- 作者:Bin -- 发布时间:2014/4/17 17:48:00 -- 数据量大的话,这个速度没办法提升. 只能够考虑换一个方式来做. 你说一下你的具体业务需求,也许有更好的方式.
|
-- 作者:有点甜 -- 发布时间:2014/4/17 17:52:00 -- 试试这样,不行的话,就没办法了。可能是数据量大的原因
If e.Table.Current Is Nothing Then \'如果Current为Nothing |
-- 作者:lsy -- 发布时间:2014/4/17 17:58:00 -- Find执行速度比较慢,数据量稍大,就体现出来了。 |
-- 作者:jianjingmaoyi -- 发布时间:2014/4/17 18:03:00 -- 做个副本表 筛选下 不要定位试试 |
-- 作者:kmzb56 -- 发布时间:2014/4/17 23:02:00 -- 不行,试了。 |