gpt4 book ai didi

sql - Exec <存储过程> 非常慢

转载 作者:行者123 更新时间:2023-12-04 04:37:45 25 4
gpt4 key购买 nike

我有一个非常大的存储过程,它采用单个参数 @date .当我突出显示 SQL 代码并点击执行时,查询会在大约 25 秒内运行。但是,如果我尝试使用以下方法在单独的窗口中运行存储过程:

Exec <Stored Procedure> @date = '2013-10-16'

存储过程大约需要一个半小时才能运行。关于为什么会发生这种情况的任何想法?我也试图通过 BIDS 来运行它,并且存储过程需要同样长的时间来运行。

注意:当我突出显示要执行的代码时,我使用
Declare @date as date = '2013-10-16'

来设置参数。

最佳答案

当你说如果你声明参数变量并手动运行 sql 时它运行得很快,但是当你通过 BIDS 运行它时需要很长时间,我想到了参数嗅探。

尝试在您的 SP 中声明一个变量,然后您要做的第一件事就是将您的参数值分配给这个新的局部变量,然后在您的 SP 中的任何地方使用该局部变量。

更多信息:http://blogs.technet.com/b/mdegre/archive/2012/03/19/what-is-parameter-sniffing.aspx

关于sql - Exec <存储过程> 非常慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19430434/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com