存儲過程調用out
1. ORCL 帶out的的存儲過程怎麼調用
1、根據存儲的out參數個數,定義這些參數
declarep_codenumber;p_messagenumber;
2、輸入in參數值,調用
P_TASK_DELIVER_ACM(100,p_code,p_message);
3、如下面這個,執行就可以了
2. mysql怎麼調用out參數的存儲過程
call sp_add();
是不是你定義的過程有問題吧,並沒有指出返回結果來
像我這樣是可以的:
CREATE PROCEDURE sp_add(a int, b int,out c int)
begin
set c=a+ b;
end;
調用過程:
call sp_add (1,2,@a);
select @a;
3. oracle中帶有out類型的存儲過程應該如何調用跪求大神指點我
pro5_out本來就是一個存儲過程,所以你直接調用就可以了,另外你下面調用的時候寫的是一個pl/sql塊,所以需要參照pl/sql塊的寫法,不然的話就會出現value3沒有聲明的情況,可以參照上面的declare那一段就可以了。
4. oracle怎麼在存儲過程里調用out參數的存儲過程
在所定義的存儲過程中,參數的名字後面加上out即可。
例如:
create or replace procere pr1(id in varchar2, name out varchar2)
is
begin
select table_name into name from table1 where table_id = id;
end pr1;
其中存儲過程pr1有兩個參數,id是輸入參數,只能向該存儲過程傳入值,用in修飾。name是輸出參數,只能返回該存儲過程的賦與name的結果,用out修飾。
5. 使用out的存儲過程與函數有什麼區別
1. 返回值的區別,函數有1個返回值,而存儲過程是通過參數返回的,可以有多個或者沒有2.調用的區別,函數可以在查詢語句中直接調用,而存儲過程必須單獨調用.函數一般情況下是用來計算並返回一個計算結果而存儲過程一般是用來完成特定的數據操作(比如修改、插入資料庫表或執行某些DDL語句等等)參數的返回情況來看:如果返回多個參數值最好使用存儲過程,如果只有一個返回值的話可以使用函數;從調用情況來看:如果在SQL語句(DML或SELECT)中調用的話一定是存儲函數或存儲的封裝函數不可以是存儲過程,但調用存儲函數的時候還有好多限制以及函數的純度等級的問題.oracle函數和存儲過程最大的區別就在於,函數必須帶上一個return返回值,後面跟的是返回值的類型,而存儲過程可以不帶任何返回值。另外,存儲過程和函數同樣支持in,out,in out這三種類型的參數,對應的是分別指明輸入性的參數、輸出型的參數、輸入輸出型的參數。也就是說如果我們需要返回多個值,除了可以使用存儲過程來實現之外,也可以用函數來實現,方法是你將其中一個用return來返回,其他就指明該數據為out參數就可以了。Oracle中存儲過程和函數都可以返回值,但是函數必須要返回值,並一般只返回一個值,而存儲過程則沒有這個限制。從一般應用上來看,如果不需要返回值或者需要多個返回值,使用存儲過程,如果只用一個返回值,就使用函數,從一般程序員的習慣上來看,這樣更符合思維。
6. 寫PL/SQL存儲過程的時候用OUT 有什麼作用
表示這是存儲過程的輸出,調用存儲過程的返回值