什麼是存儲過程
當開發一個應用程序時,爲了易於修改和擴充,經常會將負責不同功能的語句集中起來而且按照用途分別獨立放置,以便能夠反覆調用,而這些獨立放置且擁有不同功能的語句,既是“過程”
存儲過程的類型
1. 系統存儲過程
系統存儲過程主要存儲在master數據庫中,並以sp_爲前綴,並且系統存儲過程主要是從系統表中獲取信息,從而爲系統管理員管理SQL SERVER提供支持。系統存儲過程中在master數據庫中創建,由系統管理員管理。所有系統存儲過程的名稱均以sp_開頭。
2. 本地存儲過程
本地存儲過程也就是用戶自行創建並存儲在用戶數據庫中存儲過程。事實上一般所說的存儲過程就是本地存儲過程。
用戶創建的存儲過程是由用戶創建並能完成某一特定躬耕的存儲過程。
3. 臨時存儲過程
臨時存儲過程分爲2種。
1) 本地臨時存儲過程
不論哪一個數據庫是當前數據庫,如果在創建存儲過程時,以#號爲其名稱的第一個字符,則該存儲過程將成爲一個存放在tempdb數據庫中的本地臨時存儲過程。本地臨時存儲過程是由創建它的連接用戶才能執行它,而且一旦這位用戶斷開與SQL Server的連接,本地臨時存儲過程就會自動刪除。
2) 全局臨時存儲過程
不論哪一個數據庫是當前數據庫,如果在創建存儲過程時,以2個#號爲其名稱的第一個字符,則該存儲過程將成爲一個存放在tempdb數據庫中的全局臨時存儲過程。全局臨時存儲過程一旦創建,以後連接到SQL Server 2005的任意用戶都能執行它,而且不需要特定權限。
4. 遠程存儲過程
5. 擴展存儲過程