oracle儲存過程和函式的呼叫

2021-12-30 10:25:15 字數 1977 閱讀 8427

oracle儲存過程和函式的呼叫

--建立儲存過程

create or replace procedure pro_add(num1 number,num2 number,r out number)

asbegin

r:=num1+num2;

end;

www.2cto.com  

create or replace procedure pro_minus(num1 number,num2 number,r out number)

asbegin

r:=num1-num2;

end;

--建立函式

create or replace function fcn_add(num1 number,num2 number)

return number is r number;

begin

r:=num1+num2;

return r;

end;

create or replace function fcn_minus(num1 number,num2 number)

return number is

begin

return num1-num2;

end;

www.2cto.com  

create or replace function fcn_minus1(num1 number,num2 number)

return number is

r number;

r1 number;

begin

r:=num1-num2;

r1:=num2-num1;

if r-r1>0 then

return r;

else

return r1;

end if;

end;

--呼叫儲存過程

declare

n1 number;

n2 number;

r number;

fr number;

begin

n1:=3;

n2:=2;

pro_add(n1,n2,r);

dbms_output.put_line('相加的結果:'||r);

--1可以使用這種方式來獲取儲存過程的返回值

pro_minus(n1,n2,r);

--2也可以使用這種方式來獲取儲存過程的返回值

pro_minus(num1 => n1,num2 => n2,r => r);

--如果使用1的方式那麼所有的引數都需要使用這種方式傳進去

--如果使用2的方式那麼所有的引數都需要使用相同的方式去寫

--第二種方式使用的是相關性

dbms_output.put_line('相減的結果:'||r);

end;

www.2cto.com  

--呼叫function

declare

n1 number;

n2 number;

r number;

begin

www.2cto.com  

--獲取函式的返回值的時候只需要按照正常的方式去呼叫它就行了

n1:=3;

n2:=5;

r:=fcn_add(num1 => n1,num2 => n2);

dbms_output.put_line('相加的結果:'||r);

r:=fcn_minus(num1 => n1,num2 => n2);

dbms_output.put_line('使用fcn_minus相減的結果:'||r);

r:=fcn_minus1(num1 => n1,num2 => n2);

dbms_output.put_line('使用fcn_minus1相減的結果:'||r);

end;  

作者 tengdazhang770960436

JDBC MYSQL 儲存函式和儲存過程的呼叫

最近要學習資料庫,在用jdbc呼叫儲存過程和儲存函式是出現了小麻煩。在mysql中,用jdbc呼叫儲存過程和儲存函式還是有一些不同的。一,用jdbc呼叫儲存過程一般過程如下 string sql call proc callablestatement cstmt con.preparecall sq...

Oracle儲存過程和儲存函式

參看 oracle儲存過程 儲存函式 說明 儲存過程 儲存函式都是物件。包括表 檢視 索引 序列 同義詞等也是物件。概念 指儲存在資料庫中供所有使用者程式呼叫的子程式叫儲存 過程 儲存函式。特點 完成特定功能的程式。區別 儲存函式可以通過return子句返回乙個值。建立和使用儲存過程 用create...

ORACLE的儲存過程和函式

儲存過程 儲存函式 指儲存在資料庫中供所有使用者程式呼叫的子程式 儲存過程和儲存函式的相同點 完成特定功能的程式 儲存過程和儲存函式的區別 是否用return語句返回值 儲存函式用return語句返回值,而儲存過程不能 建立和使用儲存過程 用create procedure 命令建立儲存過程和儲存函...