ADO查询两次变成很慢(假死状态)

ljr_aa 2013-06-03 10:40:11
select a.*
from LNoBarcodeStock a inner join V_YarnMaster b on a.ItemCode=b.yarnnumbercode_s
left join UDepositary c on a.WarehouseNo = c.DepositaryCode
inner join WarehouseType d on a.WhseNo = d.whseno
inner join MstCompany e on a.CompanyNo=e.CompanyNo
left join suppliermaster j on In_Source =j.SupplierCode
left join suppliermaster k on In_Source2 = k.SupplierCode
left join YarnQFeedback_HD l on a.ItemCode=l.YarnSysNum and a.BatchN=l.BatchN
left join YarnStockHold m on a.ReceiveID=m.ReceiveID
where a.Quantity-a.Out_Qty >0 and d.WhseNoDesc like '%AABB%'

以上语句,在查询分析器中多次运行都很快,但在程序中,用ADO打开时,第一次正常速度,但第二次就很慢(假死),谁能分析原因?

ado用了Rst.CursorLocation = adUseClient
...全文
140 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
szm341 2013-06-04
  • 打赏
  • 举报
回复
如果第一次查询没问题,第二次有问题,看看是不是代码中打开后忘记关闭数据库?
ljr_aa 2013-06-04
  • 打赏
  • 举报
回复
现在问题是第一次运行查询没问题,刷新一次就卡了
KevinLiu 2013-06-03
  • 打赏
  • 举报
回复
有没有抓过Profiler Trace?看看第一次语句到达数据库的时间以及实际运行的时间和返回给客户端的时间,看看哪个阶段花费时间最久再做优化。
-Tracy-McGrady- 2013-06-03
  • 打赏
  • 举报
回复
。。。。。。。。这是什么语句啊
KevinLiu 2013-06-03
  • 打赏
  • 举报
回复
就是先选定event然后运行语句根据开始结束时间找瓶颈
ljr_aa 2013-06-03
  • 打赏
  • 举报
回复
Profiler Trace 这个怎样看?请教了

22,210

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧