登錄

存儲(chǔ)過程

百科 > 信息管理術(shù)語(yǔ) > 存儲(chǔ)過程

1.什么是存儲(chǔ)過程

存儲(chǔ)過程是 SQL 語(yǔ)句和可選控制流語(yǔ)句的預(yù)編譯集合,以一個(gè)名稱存儲(chǔ)并作為一個(gè)單元處理,是數(shù)據(jù)庫(kù)中的一個(gè)對(duì)象。

存儲(chǔ)過程存儲(chǔ)在數(shù)據(jù)庫(kù)內(nèi),可由應(yīng)用程序通過一個(gè)調(diào)用執(zhí)行,而且允許用戶聲明變量、有條件執(zhí)行以及其它強(qiáng)大的編程功能。

2.存儲(chǔ)過程的類型

1、系統(tǒng)存儲(chǔ)過程:以“sp_”為前綴標(biāo)識(shí),存儲(chǔ)在“master”數(shù)據(jù)庫(kù)中,提供對(duì)系統(tǒng)表的檢索和管理功能。

2、擴(kuò)展存儲(chǔ)過程:以“xp_”為前綴標(biāo)識(shí),通過執(zhí)行外部DLL來實(shí)現(xiàn)功能。

3、本地存儲(chǔ)過程:創(chuàng)建在用戶數(shù)據(jù)庫(kù)中。

4、臨時(shí)存儲(chǔ)過程:主要用于用戶會(huì)話中臨時(shí)存儲(chǔ)的功能。

5、遠(yuǎn)程存儲(chǔ)過程:為早期功能。

3.存儲(chǔ)過程的優(yōu)點(diǎn)

1、與其他應(yīng)用程序共享應(yīng)用邏輯,確保一致的數(shù)據(jù)訪問和修改。存儲(chǔ)過程封裝了商務(wù)邏輯。若規(guī)則或策略有變化,則只需要修改服務(wù)器上的存儲(chǔ)過程,所有的客戶端就可以直接使用。

2、屏蔽數(shù)據(jù)庫(kù)模式的詳細(xì)資料。用戶不需要訪問底層的數(shù)據(jù)庫(kù)和數(shù)據(jù)庫(kù)內(nèi)的對(duì)象。

3、提供了安全性機(jī)制。用戶可以被賦予執(zhí)行存儲(chǔ)過程的權(quán)限,而不必在存儲(chǔ)過程引用的所有對(duì)象上都有權(quán)限。

4、改善性能。預(yù)編譯的 Transact-SQL 語(yǔ)句,可以根據(jù)條件決定執(zhí)行哪一部分。

5、減少網(wǎng)絡(luò)通信量。客戶端用一條語(yǔ)句調(diào)用存儲(chǔ)過程,就可以完成可能需要大量語(yǔ)句才能完成的任務(wù),這樣減少了客戶端和服務(wù)器之間的請(qǐng)求/回答包。

評(píng)論  |   0條評(píng)論