存儲過程
1.什么是存儲過程
存儲過程是 SQL 語句和可選控制流語句的預編譯集合,以一個名稱存儲并作為一個單元處理,是數(shù)據(jù)庫中的一個對象。
存儲過程存儲在數(shù)據(jù)庫內(nèi),可由應用程序通過一個調(diào)用執(zhí)行,而且允許用戶聲明變量、有條件執(zhí)行以及其它強大的編程功能。
2.存儲過程的類型
1、系統(tǒng)存儲過程:以“sp_”為前綴標識,存儲在“master”數(shù)據(jù)庫中,提供對系統(tǒng)表的檢索和管理功能。
2、擴展存儲過程:以“xp_”為前綴標識,通過執(zhí)行外部DLL來實現(xiàn)功能。
3、本地存儲過程:創(chuàng)建在用戶數(shù)據(jù)庫中。
4、臨時存儲過程:主要用于用戶會話中臨時存儲的功能。
5、遠程存儲過程:為早期功能。
3.存儲過程的優(yōu)點
1、與其他應用程序共享應用邏輯,確保一致的數(shù)據(jù)訪問和修改。存儲過程封裝了商務邏輯。若規(guī)則或策略有變化,則只需要修改服務器上的存儲過程,所有的客戶端就可以直接使用。
2、屏蔽數(shù)據(jù)庫模式的詳細資料。用戶不需要訪問底層的數(shù)據(jù)庫和數(shù)據(jù)庫內(nèi)的對象。
3、提供了安全性機制。用戶可以被賦予執(zhí)行存儲過程的權限,而不必在存儲過程引用的所有對象上都有權限。
4、改善性能。預編譯的 Transact-SQL 語句,可以根據(jù)條件決定執(zhí)行哪一部分。
5、減少網(wǎng)絡通信量??蛻舳擞靡粭l語句調(diào)用存儲過程,就可以完成可能需要大量語句才能完成的任務,這樣減少了客戶端和服務器之間的請求/回答包。
評論 | 0條評論
評論