為什麼要使用儲存過程?

2021-07-10 04:46:58 字數 732 閱讀 2279

1.儲存過程只在創造時進行編譯,以後每次執行儲存過程都不需再重新編譯,而一般 sql

語句每執行一次就編譯一次,所以使用儲存過程可提高資料庫執行速度。

2.當對資料庫進行複雜操作時(如對多個表進行

update,insert,query,delete

時),可將此複雜操作用儲存過程封裝起來與資料庫提供的事務處理結合一起使用。這些操作,如果用程式來完成,就變成了一條條的 sql

語句,可能要多次連線資料庫。而換成儲存,只需要連線一次資料庫就可以了。

3.儲存過程可以重複使用,可減少資料庫開發人員的工作量。

4.安全性高,可設定只有某此使用者才具有對指定儲存過程的使用權。 儲存過程的缺點

1:除錯麻煩,但是用 pl/sql developer 除錯很方便!彌補這個缺點。   

2:移植問題,資料庫端**當然是與資料庫相關的。但是如果是做工程型專案,基本不存在移植問題。   

3:重新編譯問題,因為後端**是執行前編譯的,如果帶有引用關係的物件發生改變時,受影響的儲存過程、包將需要重新編譯(不過也可以設定成執行時刻自動編譯)。

4:如果在乙個程式系統中大量的使用儲存過程,到程式交付使用的時候隨著使用者需求的增加會導致資料結構的變化,接著就是系統的相關問題了,最後如果使用者想維護該系統可以說是很難很難、而且代價是空前的。維護起來更加麻煩。

5:為考慮後續的維護,建議要養成新增注釋的習慣,因為儲存過程中可能會有大量的sql,及時自己寫的,過了幾個月你再去看也不一定記得每個細節。

為什麼要使用blog

有哥們問我,你為什麼使用blog?我總結了一下,覺得有如下幾個原因。1對自己的督促 有了blog,就會經常記得寫點東西 就會經常翻翻網上的新文章,了解一下新技術,不至於迷失在忙碌的生活中 如果把自己的所感所想所學寫出了,自己對自己也會有個概念,不至於迷迷糊糊 還有,畢竟是掛在網上的文字,心中難免擔心...

為什麼要使用XML

xml 代表擴充套件標記語言 extensible markup language 是由 world wide web consortium w 3c 的 xml工作組定義的。這個工作組是這樣描述該語言的 擴充套件標記語言 xml 是 sgml 的子集,其目標是允許普通的 sgml 在web 上以目...

為什麼要使用Nginx?

有人說這些基準測試是不準確的,因為在這樣那樣的環境下,做的比較不一致。我傾向同意基準測試只是告訴了我們其中一部分情況,你能做的是消除偏見 有人見過所有人都同意乙個基準測試是公平的嗎?我是沒見過。我們投資的一些公司把web平台切換到nginx後,可以顯著的解決擴充套件問題。nginx明顯有效的實現了今...