2009-01-14 51 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

現在的答案的「不」的一部分。我們有很多空白空間的查詢,而且這種情況發生的時間恰好是我意識到的。這完全不是加速查詢的標準方式,只是發生了一個非常奇怪的邊緣情況。我不會花費時間從存儲過程中刪除空白,它幾乎永遠不會有幫助。幾乎。