碰到一个奇怪的事情,就是有个程序在前台会调用存储过程,每天前台程序打开很慢,但是如果在查询分析器中先执行几次该存储过程,前台就变快了。有时候查询分析器中只要执行1次,前台就快了,现在我要每天帮他们在查询分析中先执行几次,然后前台就快了,如果不在查询分析中执行,前台程序一直是慢的。不知道是啥原因?请大家给分析分析。  前台是delphi 后台是MS-SQLSERVER2000。

解决方案 »

  1.   

    如果执行的sql程序后,就被存放在缓存区内,如果有数据更新时,原来缓存的sql还是存在
    update更新的语句还是又另外缓存一份的。
      

  2.   

    相同的SQL语句在第二次执行的时候,数据库系统不需要再从磁盘文件中调数据分析,可以直接利用上次查询的缓存输出。建议你具体分析一下存储过程中的语句,看一下是哪一步慢。