| 发表于:2007-09-17 09:15:08 楼主 |
adata: olevariant; adodataset.commandtext:= "select t.*,gs.id as 公司id,gs.公司名称,zm.id as 账目id,zm.账目名称,jh.id as 计划id,jh.计划名称,gc.工程编号,gc.工程名称 ,sgd.名称 as 施工队名称,yh.姓名 as 登记人,yhsh.姓名 as 审核人员,hzplan.汇总表id,zt.名称 as 状态名称,decode(t.施工队性质, '0 ', '内部施工队 ', '1 ', '外部施工队 ') as 内外施工队 from 材料计划申请表 t,工程表 gc,施工队 sgd,dic_状态 zt,计划表 jh,账目表 zm,公司表 gs,系统_用户表 yh,系统_用户表 yhsh,已汇总材料计划 hzplan where t.工程id=gc.id and t.审批状态=zt.代码(+) and zt.对象= '材料计划申请 ' and gc.计划id=jh.id and jh.账目id=zm.id and zm.公司id=gs.id and t.id=hzplan.申请表id(+) and t.施工队id=sgd.id and t.登记人id=yh.id and t.审核人员id=yhsh.id(+) and ((审批状态= '9 ' or 审批状态= '7 ')) " //语名1 adata:=tdatasetprovider.getrecords(-1,arecsout,ord(grreset)); //需时30秒 其中tdatasetprovider的dataset是一个adodataset,adodataset查出600多条记录,在pl/sql里面直接运行该adodatase的sql耗时1秒钟。但是中间件运行“语名1”耗时30秒,客户端反应变得非常慢,请问怎么提高速度??谢 |
|
|
|
|