以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 改用SQLCompute变的很慢 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=65548) |
-- 作者:wjl-se -- 发布时间:2015/3/18 11:33:00 -- 改用SQLCompute变的很慢 数据全部加载,原来用compute速度挺快的,改用SQLCompute变的非常慢,什么原因呢? |
-- 作者:有点甜 -- 发布时间:2015/3/18 11:34:00 -- 不要多次重复使用SQLCompute,如果多次,建议先用临时表把所有表弄出来,再用compute。 |
-- 作者:Bin -- 发布时间:2015/3/18 11:35:00 -- 数据全部加载,就不要用SQLCompute了. 这个会到数据库统计查询, 如果服务器和网络速度不快,反复多次查询统计肯定会慢 |
-- 作者:wjl-se -- 发布时间:2015/3/18 11:37:00 -- 好的,谢谢! |
-- 作者:wjl-se -- 发布时间:2015/3/18 13:59:00 -- 局域网,外部ACCESS数据源,后台{产成品库}5万条数据,单次执行SQLCompute: {订单表}计算入库: rk = DataTables("产成品库").SQLCompute("Sum(入库)", "[订单号] = \'" & e.DataRow("订单号") & "\' And [入库方向] = \'入库\' And [入库日期] <= #" & mydate & "#")
慢的无法忍受啊,请问老师如何优化? [此贴子已经被作者于2015/3/18 14:00:30编辑过]
|
-- 作者:有点甜 -- 发布时间:2015/3/18 14:03:00 -- 执行一次计算,还是多次计算?指执行一次的话,没办法优化。 [此贴子已经被作者于2015/3/18 14:03:29编辑过]
|
-- 作者:Bin -- 发布时间:2015/3/18 14:04:00 -- 你这样计算5万次不科学. 你一条条计算啊. 干嘛动不动就遍历5行行? 你想做什么? |
-- 作者:wjl-se -- 发布时间:2015/3/18 14:04:00 -- 每笔订单都要计算一次 订单表是父表,产成品表是子表 [此贴子已经被作者于2015/3/18 14:04:39编辑过]
|
-- 作者:有点甜 -- 发布时间:2015/3/18 14:05:00 -- 那你 SQLCompute 执行多少次啊,计算一次也很慢么? |
-- 作者:Bin -- 发布时间:2015/3/18 14:06:00 -- 你新建一个订单,或者修改一个订单,你就计算这一行不久好了. |