sql语句:select 1 from towerload_info where FilesNames=''FC001MY1500KW19-20120801021848TJ'' and LoadSign=1
在navicat中执行时返回结果只需要100多ms,但在自己编写的程序中需要6s(ado),请各位帮忙看看是什么原因?
...全文
342519打赏收藏
为什么同一条sql语句,在navicat中比在程序中执行要快100倍以上?
sql语句:select 1 from towerload_info where FilesNames=''FC001MY1500KW19-20120801021848TJ'' and LoadSign=1 在navicat中执行时返回结果只需要100多ms,但在自己编写的程序中需要6s(ado),请各位帮忙看看是什么原因?
楼主试一下 select Count(*) from towerload_info where LoadSign=1 and FilesNames='FC001MY1500KW19-20120801021848TJ'
这句语句的时间,如果非常短,试一下把你的AdoQuery.CursorLocation设置成clUseServer试一下查询记录的速度,不确定能解决你的问题.
个人分析:
50万条记录查询并全部复制到本地100ms完成有点悬,所以怀疑它用的分页或者就是这样,或者其他因为你select 1,固定数字,只要一个满足条件的记录数就够了,所以navicat有可能优化,不确定这一点。