当前位置: 代码迷 >> VFP >> 数据处理很慢 求高手优化代码解决办法
  详细解决方案

数据处理很慢 求高手优化代码解决办法

热度:4785   发布时间:2013-02-26 00:00:00.0
数据处理很慢 求高手优化代码
代码如下:
sele 1
use t:\foxprow\tnkm\2009\hgr09 excl

sele 2
use t:\foxprow\tnkm\2009\hgo09 excl

sele 3
use t:\Foxprow\TNKM\HGRCCL\hgna excl

public tmpcla,tmpnu,tmpno,tmpcost1,tmpcost2

sele 2
go top
do while !eof()
  tmpnu=nu
  sele 3
  locate for nu=tmpnu
  if !eof()
  tmpcla=cla
  sele 2
  replace rcost with wt*cost,cla with tmpcla
  endif
  sele 2
  skip
enddo


处理的数据大概有1W条左右,可是要运行差不多20分钟才能完成,是不是while,if循环用的地方不对呢?
各位大大帮忙优化下,不胜感激!

------解决方案--------------------------------------------------------
过多的 sele 切换了。如果版本可以,建议直接用 SQL 语句 update ...
------解决方案--------------------------------------------------------
是,但与UPDATE SQL相比,还是慢,建议升级9
------解决方案--------------------------------------------------------

Scan ... Endscan

替换

do while ... Enddo

会提高速度的。
  相关解决方案