2014-12-19 33 views
-1

我想知道哪個更好的性能:查看或存儲過程。視圖和存儲過程之間的性能差異

如果在查看和存儲過程中都寫入同樣的select查詢(比如說有一些連接),那麼哪一個會給出更好的性能。或者在這種情況下應該選擇什麼。

+0

當你在兩者上運行測試時會發生什麼? – 2014-12-19 06:20:19

+0

你爲什麼不跑並且測量時間? – 2014-12-19 06:20:49

回答

3

他們是非常不同的概念,說實話。視圖是單個結果集,用於在單個查詢語句中顯示來自一個或多個來源的信息。它有一個固定的模式(即它返回的結果集總是具有相同的列)並且它沒有參數。

存儲過程只是存儲的查詢。他們可以有參數,可以選擇哪些部分執行或不使用控制邏輯,他們可以創建和銷燬數據庫中的對象,他們可以返回任意數量的結果集。

2

查看---

不接受參數。 可以用作大型查詢中的構建塊。 只能包含一個Select查詢。 無法對任何表格執行修改。 可以使用(有時)作爲插入,更新,刪除查詢的目標。

存儲程序---

接受參數。 不能用作大型查詢中的構建塊。 可以包含if,else,loop等幾個語句。 可以對一個或多個表執行修改。 不能用作插入,更新,刪除查詢的目標。

相關問題