當前位置:首頁 » 服務存儲 » 下列不是存儲過程的優點的是
擴展閱讀
webinf下怎麼引入js 2023-08-31 21:54:13
堡壘機怎麼打開web 2023-08-31 21:54:11

下列不是存儲過程的優點的是

發布時間: 2022-06-28 20:51:51

存儲過程有什麼優缺點為什麼要用存儲過程

存儲過程是一組予編譯的sql語句
它的優點:1.允許模塊化程序設計,就是說只需要創建一次過程,以後在程序中就可以調用該過程任意次。
2.允許更快執行,如果某操作需要執行大量SQL語句或重復執行,存儲過程比SQL語句執行的要快。

3.減少網路流量,例如一個需要數百行的SQL代碼的操作有一條執行語句完成,不需要在網路中發送數百行代碼。
4.更好的安全機制,對於沒有許可權執行存儲過程的用戶,也可授權他們執行存儲過程。

② 簡述存儲過程的優點

1 模塊化編程 2. 加快速度 3.減少網路流量 4.提高系統安全性

③ 什麼時候要用存儲過程,存儲過程的優點

使用存儲過程並沒有什麼時候的限制,說白了任何時候都可以使用存儲過程,因為存儲過程是經過編譯的程序片段,在資料庫啟動時已經載入在oracle的cache中了,並且任何人調用它都不會經過重新編譯,也不會進行語法分析及最近路徑選擇等耗時的操作,所以建議多使用。
存儲過程的優點:

1.存儲過程只在創造時進行編譯,以後每次執行存儲過程都不需再重新編譯,而一般SQL語句每執行一次就編譯一次,所以使用存儲過程可提高資料庫執行速度。
2.當對資料庫進行復雜操作時(如對多個表進行Update,Insert,Query,Delete時),可將此復雜操作用存儲過程封裝起來與資料庫提供的事務處理結合一起使用。
3.存儲過程可以重復使用,可減少資料庫開發人員的工作量
4.安全性高,可設定只有某此用戶才具有對指定存儲過程的使用權
缺點:
1.如果更改范圍大到需要對輸入存儲過程的參數進行更改,或者要更改由其返回的數據,則您仍需要更新程序集中的代碼以添加參數、更新
GetValue()
調用,等等,這時候估計比較繁瑣了。
2.可移植性差
由於存儲過程將應用程序綁定到
SQL
Server,因此使用存儲過程封裝業務邏輯將限制應用程序的可移植性。

④ 使用存儲過程有哪些優點

對於操作員來講,存儲過程簡化了操作員的操作,進程定時調用,可以讓系統自動進行定時化、批量化的操作,減少了操作員的工作量。

而且存儲過程中可以增加一些日誌處理,便於操作員對數據的跟蹤。

⑤ 存儲過程的優缺點

存儲過程的優缺點:
存儲過程優點:
1.由於應用程序隨著時間推移會不斷更改,增刪功能,T-SQL過程代碼會變得更復雜,StoredProcere為封裝此代碼提供了一個替換位置。
2.執行計劃(存儲過程在首次運行時將被編譯,這將產生一個執行計劃--
實際上是
Microsoft
SQL
Server為在存儲過程中獲取由
T-SQL
指定的結果而必須採取的步驟的記錄。)緩存改善性能。
但sql
server新版本,執行計劃已針對所有
T-SQL 批處理進行了緩存,而不管它們是否在存儲過程中,所以沒比較優勢了。
3.存儲過程可以用於降低網路流量,存儲過程代碼直接存儲於資料庫中,所以不會產生大量T-sql語句的代碼流量。
4.使用存儲過程使您能夠增強對執行計劃的重復使用,由此可以通過使用遠程過程調用
(RPC)
處理伺服器上的存儲過程而提高性能。RPC
封裝參數和調用伺服器端過程的方式使引擎能夠輕松地找到匹配的執行計劃,並只需插入更新的參數值。
5.可維護性高,更新存儲過程通常比更改、測試以及重新部署程序集需要較少的時間和精力。
6.代碼精簡一致,一個存儲過程可以用於應用程序代碼的不同位置。
7.更好的版本控制,通過使用
Microsoft
Visual
SourceSafe
或某個其他源代碼控制工具,您可以輕松地恢復到或引用舊版本的存儲過程。
8.增強安全性:
a、通過向用戶授予對存儲過程(而不是基於表)的訪問許可權,它們可以提供對特定數據的訪問;
b、提高代碼安全,防止
SQL注入(但未徹底解決,例如,將數據操作語言--DML,附加到輸入參數);
c、SqlParameter
類指定存儲過程參數的數據類型,作為深層次防禦性策略的一部分,可以驗證用戶提供的值類型(但也不是萬無一失,還是應該傳遞至資料庫前得到附加驗證)。
存儲過程缺點:
1.如果更改范圍大到需要對輸入存儲過程的參數進行更改,或者要更改由其返回的數據,則您仍需要更新程序集中的代碼以添加參數、更新
GetValue()
調用,等等,這時候估計比較繁瑣了。
2.可移植性差
由於存儲過程將應用程序綁定到
SQL
Server,因此使用存儲過程封裝業務邏輯將限制應用程序的可移植性。如果應用程序的可移植性在您的環境中非常重要,則將業務邏輯封裝在不特定於
RDBMS
的中間層中可能是一個更佳的選擇。
3.
大量採用存儲過程進行業務邏輯的開發致命的缺點是很多存儲過程不支持面向對象的設計,無法採用面向對象的方式將業務邏輯進行封裝,從而無法形成通用的可支持復用的業務邏輯框架。
4.代碼可讀性差,相當難維護.

⑥ 存儲過程有什麼優點

類似於我們編程時的函數,將常用的或很復雜的工作,預先用SQL語句寫好並用一個指定的名稱存儲起來, 那麼以後要叫資料庫提供與已定義好的存儲過程的功能相同的服務時,只需調用execute,即可自動完成命令,跟函數調用差不多!
存儲過程的優點:
1.存儲過程只在創造時進行編譯,以後每次執行存儲過程都不需再重新編譯,而一般SQL語句每執行一次就編譯一次,所以使用存儲過程可提高資料庫執行速度。
2.當對資料庫進行復雜操作時(如對多個表進行Update,Insert,Query,Delete時),可將此復雜操作用存儲過程封裝起來與資料庫提供的事務處理結合一起使用。
3.存儲過程可以重復使用,可減少資料庫開發人員的工作量
4.安全性高,可設定只有某此用戶才具有對指定存儲過程的使用權

⑦ 存儲過程作用是什麼,優缺點以及適用范圍是什麼

中用戶通過指定存儲過程的名字並給出參數(如果該存儲過程帶有參數)來執行它。存儲過程是SQL 語句和可選控制流語句的預編譯集合,以一個名稱存儲並作為一個單元處理。存儲過程存儲在資料庫內,可由應用程序通過一個調用執行,而且允許用戶聲明變數、有條件執行以及其它強大的編程功能。存儲過程在創建時即在伺服器上進行編譯,所以執行起來比單個SQL語句快。 存儲過程的優點: 1.存儲過程只在創造時進行編譯,以後每次執行存儲過程都不需再重新編譯,而一般SQL語句每執行一次就編譯一次,所以使用存儲過程可提高資料庫執行速度。 2.當對資料庫進行復雜操作時(如對多個表進行Update,Insert,Query,Delete時),可將此復雜操作用存儲過程封裝起來與資料庫提供的事務處理結合一起使用。 3.存儲過程可以重復使用,可減少資料庫開發人員的工作量 4.安全性高,可設定只有某此用戶才具有對指定存儲過程的使用權 缺點:1.如果更改范圍大到需要對輸入存儲過程的參數進行更改,或者要更改由其返回的數據,則您仍需要更新程序集中的代碼以添加參數、更新 GetValue() 調用,等等,這時候估計比較繁瑣了。
2.可移植性差
由於存儲過程將應用程序綁定到 SQL Server,因此使用存儲過程封裝業務邏輯將限制應用程序的可移植性。 優點: 1.由於應用程序隨著時間推移會不斷更改,增刪功能,T-SQL過程代碼會變得更復雜,StoredProcere為封裝此代碼提供了一個替換位置。 2.執行計劃(存儲過程在首次運行時將被編譯,這將產生一個執行計劃-- 實際上是 Microsoft SQL Server為在存儲過程中獲取由 T-SQL 指定的結果而必須採取的步驟的記錄。)緩存改善性能。 ........但sql server新版本,執行計劃已針對所有 T-SQL 批處理進行了緩存,而不管它們是否在存儲過程中,所以沒比較優勢了。 3.存儲過程可以用於降低網路流量,存儲過程代碼直接存儲於資料庫中,所以不會產生大量T-sql語句的代碼流量。 4.使用存儲過程使您能夠增強對執行計劃的重復使用,由此可以通過使用遠程過程調用 (RPC) 處理伺服器上的存儲過程而提高性能。RPC 封裝參數和調用伺服器端過程的方式使引擎能夠輕松地找到匹配的執行計劃,並只需插入更新的參數值。 5.可維護性高,更新存儲過程通常比更改、測試以及重新部署程序集需要較少的時間和精力。 6.代碼精簡一致,一個存儲過程可以用於應用程序代碼的不同位置。 7.更好的版本控制,通過使用 Microsoft Visual SourceSafe 或某個其他源代碼控制工具,您可以輕松地恢復到或引用舊版本的存儲過程。 8.增強安全性: a、通過向用戶授予對存儲過程(而不是基於表)的訪問許可權,它們可以提供對特定數據的訪問; b、提高代碼安全,防止 SQL注入(但未徹底解決,例如,將數據操作語言--DML,附加到輸入參數); c、SqlParameter 類指定存儲過程參數的數據類型,作為深層次防禦性策略的一部分,可以驗證用戶提供的值類型(但也不是萬無一失,還是應該傳遞至資料庫前得到附加驗證)。 缺點: 1.如果更改范圍大到需要對輸入存儲過程的參數進行更改,或者要更改由其返回的數據,則您仍需要更新程序集中的代碼以添加參數、更新 GetValue() 調用,等等,這時候估計比較繁瑣了。 2.可移植性差 由於存儲過程將應用程序綁定到 SQL Server,因此使用存儲過程封裝業務邏輯將限制應用程序的可移植性。

⑧ 什麼是存儲過程有什麼優點

存儲過程是事先經過編譯並存儲在資料庫中的一段SQL語句的集合,調用存儲過程可以簡化應用開發人員的很多工作,減少數據在資料庫和應用伺服器之間的傳輸,對於提高數據處理的效率是有好處的。

優點:

1、重復使用:存儲過程可以重復使用,從而可以減少資料庫開發人員的工作量。

2、減少網路流量:存儲過程位於伺服器上,調用的時候只需要傳遞存儲過程的名稱以及參數就可以了,因此降低了網路傳輸的數據量。

3、安全性:參數化的存儲過程可以防止SQL注入式攻擊,而且可以將Grant、Deny以及Revoke許可權應用於存儲過程。

(8)下列不是存儲過程的優點的是擴展閱讀

存儲過程的缺點:

1、更改比較繁瑣:如果更改范圍大到需要對輸入存儲過程的參數進行更改,或者要更改由其返回的數據,則仍需要更新程序集中的代碼以添加參數、更新 GetValue() 調用,等等,這時候估計比較繁瑣。

2、可移植性差:由於存儲過程將應用程序綁定到 SQL Server,因此使用存儲過程封裝業務邏輯將限制應用程序的可移植性。如果應用程序的可移植性在您的環境中非常重要,則需要將業務邏輯封裝在不特定於 RDBMS 的中間層中。

⑨ 資料庫系統原理 什麼是存儲過程有什麼優點

存儲過程也可以看成是函數的一種, 而且存儲過程中的過程如果放到了開發 系統的 D 層的時候執行效果也是相同的。 存儲過程是存儲在資料庫中的一個程序 塊, 裡麵包含了自己定義的一段程序來實現相應的功能,比如要選擇資料庫的表 裡面的記錄,就可以使用下面的存儲過程的框架:
這個實現的過程比較簡單, 就是利用的是資料庫自帶的存儲過程的模版,新 建存儲過

程的時候就可以非常方便的實現自己所需要的功能。 存儲過程中使用的 是資料庫的語言, 跟其他的高級語言的用法相似,熟練的使用資料庫的語言可以 加快開發的效率,技術也是很厲害的。 存儲過程的到底有什麼好處呢?一定要用存儲過程嗎? 存儲過程的優點: 1.存儲過程只在創造時進行編譯,以後每次執行存儲過 程都不需再重新編譯,而一般 SQL 語句每執行一次就編譯一次,所以使用存儲過 程可提高資料庫執行速度。 2.當對資料庫進行復雜操作時,可將此復雜操作用 存儲過程封裝起來與資料庫提供的事務處理結合一起使用。更多資料庫的知識, 盡在南京寶雲官網。 3.存儲過程可以重復使用,可減少資料庫開發人員的工作量 4.安全性高,可設定只有某此用戶才具有對指定存儲過程的使用權。 存儲過程有利於實現一系列的操作簡化,提高系統的執行效率,而且放在存 儲過程中的 SQL 語句是直接在資料庫中編譯過了的, 系統在執行的時候就可以減 少這部分代碼的資源開銷。 但是對於機房重構中,有時候我們只需要更新一個記錄中的某一個欄位的值, 這個時候用存儲過程就有點不劃算了,這個時候系統如 果不用存儲過程直接用 SQL 語句來說,是比較方便的。所以存儲過程並不是所有 的地方用都好,凡事都有一個合適的問題,一個度的問題。 可能有的人想存儲過程這么有用,而且對系統的性能有提升,那就強迫症的 都去使用存儲過程。 這里又有一個問題了,存儲過程的作用主要是對資料庫進行 操作, 那麼學過資料庫系統原理的我們就需要注意一個問題了,如何防止死鎖? 毫無節制的使用存儲過程, 而不考慮資料庫結構是不科學的。對於相同的表進行 不同的操作,所產生的結果也是不一樣的,產生的順序也是不一樣的,如何在存 儲過程中進行有效的操作來使系統健康強壯,這是需要注意的。 通過使用存儲過程, 可以更加清晰的理解資料庫和系統是如何相互關聯工作 的,存儲過程的使用不僅是一種技術上的提升,更是思想上的一種啟發,在今後 的開發工作中是否有相同的地方需要這樣的抽象封裝呢。 面對更多的重復出現的 封裝,我們的工作也將更加高效、簡潔。

⑩ 存儲過程有什麼優缺點

存儲過程是一組予編譯的SQL語句
它的優點:1.允許模塊化程序設計,就是說只需要創建一次過程,以後在程序中就可以調用該過程任意次。
2.允許更快執行,如果某操作需要執行大量SQL語句或重復執行,存儲過程比SQL語句執行的要快。
3.減少網路流量,例如一個需要數百行的SQL代碼的操作有一條執行語句完成,不需要在網路中發送數百行代碼。
4.更好的安全機制,對於沒有許可權執行存儲過程的用戶,也可授權他們執行存儲過程。