已知问题?:SQL Server 2005存储过程无法使用参数完成

已知问题?:SQL Server 2005存储过程无法使用参数完成,第1张

已知问题?:SQL Server 2005存储过程无法使用参数完成

尝试掩盖输入参数。

我猜因为在编译时嗅到了指定的默认值( EDIT :或首次调用时发送的参数),所以重新编译无法正常进行。因此,重新编译无效。

我已经看到了估计的计划之间的巨大差异,只需将默认值(例如,从零更改为NULL或不包含一个)就可以了。

ALTER PROCEDURE [usp_debug_mightwork]    @DATA_DT_ID AS int = 20081130ASBEGIN    DECLARE @IDATA_DT_ID AS int    SET @IDATA_DT_ID = @DATA_DT_ID    -- Stuff here that depends on IDATA_DT_IDEND

我认为这篇文章解释了…

…在编译或重新编译期间会嗅探参数值…

编辑:

有关查询计划和参数的新链接。仍然是参数嗅探是否指定了默认值。

上面的GetRecentSales存储过程中指定的WITH RECOMPILE选项不能消除基数估计错误

有关常量和计划的相关文章种类



欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/5431805.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-11
下一篇 2022-12-11

发表评论

登录后才能评论

评论列表(0条)

保存