以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  加载外部数据表速度太慢是什么原因?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=69109)

--  作者:foxtable_New
--  发布时间:2015/5/30 15:18:00
--  加载外部数据表速度太慢是什么原因?
  请教一个问题,用下面的代码加载一个具有8700行数据的sql 外部表"表A",该表作为外部数据表事先已添加到项目中,
执行下面的代码,
DataTables.Load("表A")
1秒钟不到就能加载完毕。
加上下面的代码后
 DataTables("表A").LoadFilter = "分厂 Like \'%一厂%\' and [日期] = \'" & Date.Today & "\'"
  DataTables("表A").Load()
要40秒钟才加载完毕,为什么加上条件后这么慢,有没有办法快一些?



--  作者:Bin
--  发布时间:2015/5/30 15:21:00
--  
DataTables("表A").LoadFilter = ""
  DataTables("表A").Load()

这样试试看

--  作者:foxtable_New
--  发布时间:2015/5/30 15:55:00
--  
 试过了
DataTables("表A").LoadFilter = ""
  DataTables("表A").Load()
仍然很慢,也要40秒左右,
试了几次,应该是 DataTables("表A").Load()这条语句造成的过慢,用DataTables.Load("表A")就很快
--  作者:Bin
--  发布时间:2015/5/30 15:59:00
--  
DataTables.Load("表A") 加载了所有数据吗?  还是你设置了初始加载量

所以你执行 DataTables.Load("表A")的时候没有加载数据,所以很快?




--  作者:foxtable_New
--  发布时间:2015/5/30 16:01:00
--  
请问一下:DataTables("表A").Load() 和DataTables.Load("表A"),两条语有什么区别,因为用DataTables("表A").Load()加载表太慢,DataTables.Load("表A")不能设置加载条件?
--  作者:Bin
--  发布时间:2015/5/30 16:01:00
--  
看4楼.
--  作者:foxtable_New
--  发布时间:2015/5/30 16:04:00
--  
 DataTables.Load("表A")和DataTables("表A").Load()都是加载所有数据,DataTables("表A").Load()很慢, DataTables.Load("表A")很快
--  作者:Bin
--  发布时间:2015/5/30 16:05:00
--  
没有道理啊. 

你到 狐表的SQL命令窗口.

执行 select * f rom {表A}  看看耗时

--  作者:foxtable_New
--  发布时间:2015/5/30 16:07:00
--  
 我觉得这是Foxtable 的共性问题,您也可以试一下,看看是不是和我说的一样

--  作者:Bin
--  发布时间:2015/5/30 16:14:00
--  
请看8楼.