oracle存儲過程作用
A. oracle存儲過程和觸發器用途
都重要,存儲過程和觸發器在做小項目有時可以起到簡化代碼的作用,有時不用他們一樣可以作到,只是要麻煩些.
存儲過程是用PL/sql語言編寫,可以成塊提交數據,進行批處理,這樣可以避免因一些異常狀況而出現的數據不完整問題,例如停電什麼的.並且可以在後台拋出異常,簡化前台壓力.它的用處還有很多,這里我就不一一介紹了.
觸發器是與表幾乎同時執行的PL/SQL塊,它有時起著不可替代的功能.例如在視圖中的替代觸發器,可以將基於兩個表的視圖修改,並將修改結果作用於基表中.觸發器有預處理功能,可以在增刪改操作起判斷和限製作用,也有之後觸發的可以連接表,並通過修改此表達到修改其他表的目的.
這里我只是說了一小部分它們的內容,剩下的你可以自己再學習.但我要告訴你的是,oracle不學存儲過程和觸發器想進行高級操作是不太可能的.所以建議你學好它們啊.
呵呵,這些都是我一個字一個字打的,我學的也不是很豐富,算初學者吧,交個朋友啊?以後一起交流技術.
B. ORACLE 存儲過程是什麼 它的用處,好處是什麼概念性的東西多點。。
定義:存儲過程(Stored Procere )是一組為了完成特定功能的SQL 語句集,經編譯後存儲在資料庫中。用戶通過指定存儲過程的名字並給出參數(如果該存儲過程帶有參數)來執行它。存儲過程是資料庫中的一個重要對象,任何一個設計良好的資料庫應用程序都應該用到存儲過程。
存儲過程是由流控制和SQL 語句書寫的過程,這個過程經編譯和優化後存儲在資料庫伺服器中,應用程序使用時只要調用即可。在ORACLE 中,若干個有聯系的過程可以組合在一起構成程序包。
優點:
1.存儲過程只在創造時進行編譯,以後每次執行存儲過程都不需再重新編譯,而一般SQL語句每執行一次就編譯一次,所以使用存儲過程可提高資料庫執行速度。
2.當對資料庫進行復雜操作時(如對多個表進行Update、Insert、Query、Delete時),可將此復雜操作用存儲過程封裝起來與資料庫提供的事務處理結合一起使用。
3.存儲過程可以重復使用,可減少資料庫開發人員的工作量。
4.安全性高,可設定只有某用戶才具有對指定存儲過程的使用權。
簡單說,你在你的機器上寫了個存儲過程,這個存儲過程像那些表裡的數據一樣被放在遙遠的資料庫伺服器當中,但是它又是可執行的代碼,其他能連到資料庫伺服器的用戶,可以調用你寫的存儲過程
它的作用是隱藏細節,就是說,你寫的存儲過程代碼可能很復雜,但是其他人調用它卻很簡單,不用具體知道它是如何做的,且一次能完成多個指令
oracle有系統存儲過程和自定義存儲過程2種存儲過程。
系統存儲過程就是由oracle預先提供的一組完成特定功能的存儲過程,安裝完oracle就有了。
自定義存儲過程就是存在oracle資料庫里由一組plsql語句組成的自定義過程(procere)。它可以供其它oracle自定義存儲過程、自定義函數和job調用或者由客戶端程序調用。
C. 什麼情況下oracle使用存儲過程
存儲過程是用於執行特定操作的PL/SQL塊。 其中可能包含多條sql語句 也就是一次可以執行多條語句 如果經常需要特定操作,那麼可以建立存儲過程,可以簡化開發和維護。 而且可以提高性能。建立過程可以指定參數,有點像函數
D. oracle 存儲過程在現實中的應用都有哪些
1. 不願過多的暴露資料庫的結構,通過存儲過程的調用,將結果直接結果返回給java程序(多為第三方的),而不用把數據結構告訴第三方
2. 承擔部分業務邏輯處理:oracle資料庫運行計算速度也是很快了,通過存儲過程可以承擔部分業務邏輯,減輕web伺服器的壓力
3. oracle 自身的job應用,需要調用存儲過程
4. 其他應該軟體需要調用存儲過程。如:IVR,datastation
不知道這樣說有問題不,參考下吧,也請後面的人補充
E. oracle存儲過程有什麼好處
你應該問資料庫存儲過程有什麼好處存儲過程的能力大大增強了SQL語言的功能和靈活性。存儲過程可以用流控制語句編寫,有很強的靈活性,可以完成復雜的判斷和較復雜的 運算。
* 可保證數據的安全性和完整性。
# 通過存儲過程可以使沒有許可權的用戶在控制之下間接地存取資料庫,從而保證數據的安全。
# 通過存儲過程可以使相關的動作在一起發生,從而可以維護資料庫的完整性。
* 在運行存儲過程前,資料庫已對其進行了語法和句法分析,並給出了優化執行方案。這種已經編譯好的過程可極大地改善SQL語句的性能。由於執行SQL語句的大部分工作已經完成,所以存儲過程能以極快的速度執行。
* 可以降低網路的通信量。
* 使體現企業規則的運算程序放入資料庫伺服器中,以便:
# 集中控制。
# 當企業規則發生變化時在伺服器中改變存儲過程即可,無須修改任何應用程序。企業規則的特點是要經常變化,如果把體現企業規則的運算程序放入應用程序中,則當企業規則發生變化時,就需要修改應用程序工作量非常之大(修改、發行和安裝應用程序)。如果把體現企業規則的運算放入存儲過程中,則當企業規則發生變化時,只要修改存儲過程就可以了,應用程序無須任何變化。
F. oracle 存儲過程有什麼用
存儲過程用處非常大。 是主要的sql開發語言,類似於java 開發一樣。
存儲過程可以做很多的事情,比如一些機械化的工作就可以交給存儲過程完成,還有有一些業務邏輯比較復雜的,sql已經不能滿足查詢結果時,可以用存儲過程處理,等等……,總之作用非常之大。
G. oracle中的存儲過程,有什麼作用,以及怎麼在代碼中使用
定義:存儲過程(Stored Procere )是一組為了完成特定功能的SQL 語句
集,經編譯後存儲在資料庫中。用戶通過指定存儲過程的名字並給出參數
(如果該存儲過程帶有參數)來執行它。存儲過程是資料庫中的一個重要
對象,任何一個設計良好的資料庫應用程序都應該用到存儲過程。
存儲過程是由流控制和SQL 語句書寫的過程,這個過程經編譯和優化後
存儲在資料庫伺服器中,應用程序使用時只要調用即可。在ORACLE 中,
若干個有聯系的過程可以組合在一起構成程序包。
優點:存儲過程只在創造時進行編譯,以後每次執行存儲過程都不需再重新編譯,而一般SQL語句每執行一次就編譯一次,所以使用存儲過程可提高資料庫執行速度。
2.當對資料庫進行復雜操作時(如對多個表進行Update、Insert、Query、Delete時),可將此復雜操作用存儲過程封裝起來與資料庫提供的事務處理結合一起使用。
3.存儲過程可以重復使用,可減少資料庫開發人員的工作量。
4.安全性高,可設定只有某用戶才具有對指定存儲過程的使用權。
proc = connection.prepareCall("{ call SIM_MEDICARE.P_Isinblacklist(?,?,?,?,?) }");
proc.setString(1, 「」);設置傳入參數
proc.registerOutParameter(4, Types.VARCHAR);注冊傳出參數
proc.execute();執行過程
proc.getString(4)獲取結果
H. oracle中定義存儲過程和函數,到底有什麼用
函數一般都是對數據的簡單處理,可以方便復用。
舉個簡單例子,
比如要對一個數字N做比較復雜的運算,而且需要多次使用,那麼建立函數get_N(number);
在每次需要這個結果的時候都可以調用函數來處理
比如 select get_N(n) from al;
而不需要每次都把整個計算過程都做一次。
存儲過程主要是處理一些復雜的業務,比如一個生成訂單的過程,我需要記錄訂單表,日誌表,更新客戶信息表,更新客戶積分等等的操作。
那可以把這些操作都放在一個存儲過程中實現。
每次生成訂單,只需要通過程序調用一下存儲過程就可以了。而不需要通過程序去多次鏈接資料庫,每次執行對一個表的操作。
I. oracle中的存儲過程是什麼
存儲過程是用來簡化數據查詢和輸入的,並且可以把判斷語句寫進去,但是在實際寫程序的時候沒有特別的要求千萬不要寫存儲過程.