存儲(chǔ)過(guò)程有什么用 存儲(chǔ)過(guò)程的作用是什么?
存儲(chǔ)過(guò)程的作用是什么?存儲(chǔ)過(guò)程是一組預(yù)編譯的SQL語(yǔ)句其優(yōu)點(diǎn)如下:1。模塊化編程是允許的,也就是說(shuō),一個(gè)過(guò)程只需要?jiǎng)?chuàng)建一次,以后可以在程序中隨時(shí)調(diào)用。2. 允許更快的執(zhí)行。如果一個(gè)操作需要執(zhí)行大量SQ
存儲(chǔ)過(guò)程的作用是什么?
存儲(chǔ)過(guò)程是一組預(yù)編譯的SQL語(yǔ)句
其優(yōu)點(diǎn)如下:1。模塊化編程是允許的,也就是說(shuō),一個(gè)過(guò)程只需要?jiǎng)?chuàng)建一次,以后可以在程序中隨時(shí)調(diào)用。
2. 允許更快的執(zhí)行。如果一個(gè)操作需要執(zhí)行大量SQL語(yǔ)句或重復(fù)執(zhí)行,則存儲(chǔ)過(guò)程的執(zhí)行速度將比SQL語(yǔ)句快。
3. 減少網(wǎng)絡(luò)流量。例如,一個(gè)需要幾百行SQL代碼的操作是由一個(gè)執(zhí)行語(yǔ)句完成的,因此不需要在網(wǎng)絡(luò)中發(fā)送幾百行代碼。
4. 更好的安全機(jī)制,對(duì)于沒(méi)有權(quán)限執(zhí)行存儲(chǔ)過(guò)程的用戶,還可以授權(quán)他們執(zhí)行存儲(chǔ)過(guò)程。
什么是存儲(chǔ)過(guò)程存儲(chǔ)過(guò)程有什么特點(diǎn)?
存儲(chǔ)過(guò)程是預(yù)先編譯并存儲(chǔ)在數(shù)據(jù)庫(kù)中的SQL語(yǔ)句的集合。調(diào)用存儲(chǔ)過(guò)程可以簡(jiǎn)化應(yīng)用程序開發(fā)人員的大量工作,減少數(shù)據(jù)庫(kù)與應(yīng)用服務(wù)器之間的數(shù)據(jù)傳輸,提高數(shù)據(jù)處理效率。優(yōu)點(diǎn):1。重用:存儲(chǔ)過(guò)程可以重用,這可以減少數(shù)據(jù)庫(kù)開發(fā)人員的工作量。
2. 減少網(wǎng)絡(luò)流量:存儲(chǔ)過(guò)程位于服務(wù)器上。當(dāng)它被調(diào)用時(shí),只需要傳遞存儲(chǔ)過(guò)程的名稱和參數(shù),這樣就減少了在網(wǎng)絡(luò)上傳輸?shù)臄?shù)據(jù)量。
3. 安全性:參數(shù)化存儲(chǔ)過(guò)程可以防止SQL注入攻擊,并且可以對(duì)存儲(chǔ)過(guò)程應(yīng)用grant、deny和revoke權(quán)限。存儲(chǔ)過(guò)程的缺點(diǎn)如下:1。更改很麻煩:如果更改范圍太大,需要更改輸入存儲(chǔ)過(guò)程參數(shù),或者需要更改存儲(chǔ)過(guò)程返回的數(shù)據(jù),則仍需要更新程序集中的代碼以添加參數(shù)、更新getvalue()調(diào)用,等等。在這個(gè)時(shí)候,估計(jì)是很麻煩的。2可移植性差:因?yàn)榇鎯?chǔ)過(guò)程將應(yīng)用程序綁定到SQL server,所以用存儲(chǔ)過(guò)程封裝業(yè)務(wù)邏輯將限制應(yīng)用程序的可移植性。如果應(yīng)用程序的可移植性在您的環(huán)境中非常重要,那么您需要將業(yè)務(wù)邏輯封裝在獨(dú)立于RDBMS的中間層中。