WITH RECOMPILE 到底有什么用啊msdn是这样说的
如果为过程提供的参数不是典型的参数,并且新的执行计划不应被缓存或存储在内存中,则 WITH RECOMPILE 子句会很有用。但什么典型的参数,执行计划根本看不懂

解决方案 »

  1.   

    创建存储过程时在其定义中指定 WITH RECOMPILE 选项,表明 SQL Server 将不对该存储过程计划进行高速缓存;该存储过程将在每次执行时都重新编译。当存储过程的参数值在各次执行间都有较大差异,导致每次均需创建不同的执行计划时,可使用 WITH RECOMPILE 选项。此选项并不常用,因为每次执行存储过程时都必须对其进行重新编译,这样会使存储过程的执行变慢。
      

  2.   

    今天是儿童节,不是其他节吧怎么CSDN上看到的都是乱码?
      

  3.   


    主要是按照现有的表以及数据,索引状态对执行计划进行重新编译的一个hint。