千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > 什么情況下才應該使用存儲過程而不是用程序來對數據做操作?

什么情況下才應該使用存儲過程而不是用程序來對數據做操作?

來源:千鋒教育
發布人:xqq
時間: 2023-10-13 03:43:02 1697139782

一、什么情況下才應該使用存儲過程而不是用程序來對數據做操作

1.如果處理的邏輯不是太復雜,也就是邏輯的時間復雜度不高,可以放進存儲過程,因為如果太復雜(例如有很多巨耗CPU資源的操作),會加大數據庫服務器的壓力,從而影響數據庫服務器對其它請求的響應。而本應以運行程序邏輯為本職的應用服務器,卻晾在一旁打醬油,你認為這樣真的好嗎?

2.相反,如果邏輯不太復雜,但是需要訪問的數據量是巨量的,那么就更適合放進存儲過程處理(注意處理好表鎖定的問題),因為當你讀取上千萬條件數據并把它們傳進應用服務器再來處理除了對教據庫服務器有壓力,對應用外理哭的內存壓力也很大的,倒不如直接在數據庫服務器外理完它。這種情況時,盡管在讀取大數據量時,其實無論用哪種方法,數據庫服務器的磁盤IO承受的玉力都是一樣的,但如果放在代碼里處理,也就是需要傳到應用服務器端處理,那么就會對網絡IC也形成了壓力。如果這種操作頻繁的話,會對網絡IC也形成了壓力。如果這種操作頻繁的話,會對網絡10形成壓力脈沖。有可能影響同一網絡上的其它應用。

延伸閱讀:

二、中小型項目使用存儲過程的優勢

存儲過程不僅僅適用于大型項目,對于中小型項目,使用存儲過程也是非常有必要的。其威力和優勢主要體現在:
1.存儲過程只在創造時進行編譯,以后每次執行存儲過程都不需再重新編譯,而一般 SQL 語句每執行一次就編譯一次,所以使用存儲過程可提高數據庫執行速度。
2.當對數據庫進行復雜操作時(如對多個表進行 Update,Insert,Query,Delete 時),可將此復雜操作用存儲過程封裝起來與數據庫提供的事務處理結合一起使用。這些操作,如果用程序來完成,就變成了一條條的 SQL 語句,可能要多次連接數據庫。而換成存儲,只需要連接一次數據庫就可以了。
3.存儲過程可以重復使用,可減少數據庫開發人員的工作量。
4.安全性高,可設定只有某此用戶才具有對指定存儲過程的使用權。

聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
久久亚洲中文字幕精品一区四,亚洲日本另类欧美一区二区,久久久久久久这里只有免费费精品,高清国产激情视频在线观看
日本人成在线播放免费不卡 | 亚洲色一色噜一噜噜噜人与 | 亚洲深夜福利网站 | 日韩中文高清在线专区 | 亚洲中文字幕乱碼在线观看 | 亚洲AV伊人久久青青一区 |