2009-01-14 55 views
0

有人告诉我,我不知道我相信:在SQL Server 2005从我的存储过程中删除空白,我之前提交他们,会让他们跑得更快,并提高性能。我想知道其他人都认为什么?SQL Server 2005的性能和空白

感谢,

斯科特

回答

1

没有标杆,我不能 “知道”,但听起来像公牛。

首先,我敢肯定的SQLServer编译存储过程(意思,绝对没有在冗长的效果吧)。其次,解析空白在任何系统中都是微不足道的。

2

我看不出这将是这种情况。也许存储过程会稍微快一点,但在此之后,它不应该有任何区别。

更重要的是,即使这是真的,我无法想象花删除空白将是值得任何性能优势,你会得到的时间。

1

我要举报。这甚至没有通过气味测试。 sprocs被编译,SQL Server的工作原理是从你的sproc创建的计划 - 白色空间是无关紧要的。

0

是的,没有。事实证明,您可以有两个查询,除了空白区域以外,它们在SQL Server上以不同的速度运行。我不会相信这是因为我没有亲眼看到它,但是在工作中(在SQL Server 2008上)我确实出现了这种情况,经过多次测试,拉扯头发和否认我不得不承认它正在发生。这里的其他人遇到同样问题的例子:

Space in SQL Server 2008 R2 slows down performance

现在的答案的“不”的一部分。我们有很多空白空间的查询,而且这种情况发生的时间恰好是我意识到的。这完全不是加速查询的标准方式,只是发生了一个非常奇怪的边缘情况。我不会花费时间从存储过程中删除空白,它几乎永远不会有帮助。几乎。