Oracle儲存過程及函式

2022-08-28 18:18:11 字數 1281 閱讀 7957

1.在oracle中,儲存過程包括三部分組成:定義部分、執行部分、和異常處理部分(即例外)

eg1:輸入員工編號,查詢員工的姓名和薪資

create or repalce  procedure mypro2 is

declare --定義部分,定義變數和常量等,變數定義一般以v_開頭,常量定義一般以c_開頭

v_ename varchar2(20);

v_sal number(7,2);

begin--執行部分

select ename,sal into v_ename,v_sal from emp where empno=&no;

dbms_output.put_line('員工的姓名是:'||v_ename||'工資是'||v_sal);

exception--異常處理部分

when no_data_found then

dbms_output.put_line('您輸入的員工編號不存在');

end;

eg2:帶引數的儲存過程

--輸入員工的姓名和新的薪資,根據姓名改薪資

create or replace procedure mypro2(pename varchar2,psal number) is

begin

update emp set sal=psal where ename=pename;

end;

儲存過程的呼叫方法:

a:exec mypro1()或者call mypro1();

b:exec mypro1('scott',1200)或者call mypro1('scott',1200);

2.函式

函式必須有返回值的

結構如下:根據雇員名稱求年薪

create or repalce functionmyfun1(fename varchar2)returnnumberisyearsal nunber;

begin

select sal*12+nvl(comm,0) into yearsal from emp where ename=fename;

returnyearsal;

end;

函式的呼叫方法:

sql> var ys number;

sql> call myf1('scott') into:ys;

Oracle儲存函式,儲存過程

一 oracle儲存函式 儲存的pl sql語法塊,完成特定的功能。1 語法 函式關鍵字 function 1 建立函式 create or replace function function name param1,param2 return is as local declarations de...

Oracle 儲存過程 函式

儲存過程 函式 子程式有名字 儲存在資料庫 同過名字呼叫 建立的時候被編譯 可以被其他有名或者無名的塊呼叫 語法create or replace procedure testp1 as 宣告 begin 可執行 dbms output.put line hello world end 使用 exe...

Oracle 儲存過程 函式

儲存過程和函式在oracle中被稱為子程式,是指被命名的pl sql塊,這種塊可以帶有引數,可以被多次呼叫。儲存過程用於執行特定操作,而函式則用於返回特定的資料。儲存過程是儲存在資料庫中的有名字的pl sql程式塊,接受零個或多個引數作為輸入 input 或輸出 output 或既作輸入又作輸出 i...