【pl/sql】用sql呼叫儲存過程
在sql中可以呼叫自定義函式,但是不能夠呼叫儲存過程。sql中呼叫自定義函式有一定的限制,如果是查詢語句,則不可有dml操作,除非使用匿名事務at。當然,在update,delete中使用的自定義函式可以帶dml操作。
如何用sql呼叫儲存過程呢?因為sql只能呼叫自定義函式,但是自定義函式可以呼叫儲存過程,因此,可以
sql----呼叫function---呼叫procedure
來間接實現sql呼叫函式。如下例:
sql> create or replace procedure test_prc(var1 in number,var2 out number)
2 as
3 begin
4 var2 := var1+1;
5 end;
6 /
procedure created
sql>
sql> create or replace function test_func(var1 in number)
2 return number
3 as
4 var2 number;
5 begin
6 test_prc(var1,var2);
7 return var2;
8 end;
9 /
function created
sql> select test_func(1) from dual;
test_func(1)
------------2
在程式編寫過程中,如果直接不行,就需要用間接手段,sql呼叫儲存過程,使用自定義function作為媒介,從而很容易實現這個功能。
PL SQL建立 除錯 呼叫儲存過程
儲存過程 所用函式說明 功能 求和與差 原形 getsumandsub p1 in number p2 in number m out number b out number 引數 m p1 p2 b p1 p2 1.先建儲存過程 左邊的瀏覽視窗選擇 procedures 會列出所有的儲存過程,右擊...
sql呼叫儲存過程
sqlconnection con new sqlconnection configurationmanager.connectionstrings easthhproductquoteconnectionstring tostring con.open sqlcommand cmd new sql...
PLSQL儲存過程呼叫儲存過程對異常的處理問題
開始 如果對異常處理不正確,有可能會導致意想不到的結果。下面這個就是 先寫兩個儲存過程 test01 和 test02 create orreplace procedure test01 is v id emp.empno type begin update emp set ename test01...