存儲(chǔ)過(guò)程和sql的優(yōu)缺點(diǎn) 存儲(chǔ)過(guò)程跟SQL語(yǔ)句比較,各有什么優(yōu)點(diǎn)和缺點(diǎn)?
存儲(chǔ)過(guò)程跟SQL語(yǔ)句比較,各有什么優(yōu)點(diǎn)和缺點(diǎn)?SQL存儲(chǔ)過(guò)程位于SQL數(shù)據(jù)庫(kù)1中,因此無(wú)需在程序中拼接SQL語(yǔ)句。2. SQL Server預(yù)編譯存儲(chǔ)過(guò)程,因此速度很快。3. 它不需要在網(wǎng)絡(luò)上傳輸冗長(zhǎng)
存儲(chǔ)過(guò)程跟SQL語(yǔ)句比較,各有什么優(yōu)點(diǎn)和缺點(diǎn)?
SQL存儲(chǔ)過(guò)程位于SQL數(shù)據(jù)庫(kù)1中,因此無(wú)需在程序中拼接SQL語(yǔ)句。
2. SQL Server預(yù)編譯存儲(chǔ)過(guò)程,因此速度很快。
3. 它不需要在網(wǎng)絡(luò)上傳輸冗長(zhǎng)的SQL語(yǔ)句,而是直接調(diào)用存儲(chǔ)過(guò)程的名稱,這樣可以加快速度。當(dāng)然,在一些外包軟件開(kāi)發(fā)中不允許使用存儲(chǔ)過(guò)程。
由于對(duì)方無(wú)法向您公開(kāi)數(shù)據(jù)庫(kù),此時(shí)您只能使用SQL語(yǔ)句。
然而,SQL存儲(chǔ)過(guò)程的使用在國(guó)內(nèi)一些小企業(yè)中仍然非常流行。
由于程序代碼不包含SQL語(yǔ)句,因此數(shù)據(jù)庫(kù)將相對(duì)安全。
存儲(chǔ)過(guò)程和sql語(yǔ)句有什么區(qū)別?
存儲(chǔ)過(guò)程是在大型數(shù)據(jù)庫(kù)系統(tǒng)中完成特定功能的一組SQL語(yǔ)句。編譯后存儲(chǔ)在數(shù)據(jù)庫(kù)中。用戶可以通過(guò)指定存儲(chǔ)過(guò)程的名稱并給出參數(shù)(如果存儲(chǔ)過(guò)程有參數(shù))來(lái)執(zhí)行存儲(chǔ)過(guò)程。
在再次運(yùn)行存儲(chǔ)過(guò)程之前,數(shù)據(jù)庫(kù)已分析了其語(yǔ)法和語(yǔ)法,并給出了優(yōu)化的執(zhí)行方案。
此編譯過(guò)程可以大大提高SQL語(yǔ)句的性能。
由于執(zhí)行SQL語(yǔ)句的大部分工作已經(jīng)完成,因此存儲(chǔ)過(guò)程的執(zhí)行速度非常快。