/*不帶任何引數儲存過程*/
create or replace procedure out_date is
begin
dbms_output.put_line(sysdate);
end out_date;
--測試
sql> set serveroutput on;
sql> exec out_date;
/*帶in和out引數的儲存過程*/
create or replace procedure get_name(v_id in number, v_name out varchar2) as
begin
select name into v_name from employee where id = v_id;
exception
when no_data_found then
end get_name;
--測試
sql> var v_name varchar2(20);
sql> exec get_name(4,:v_name);
pl/sql 過程已成功完成。
sql> print v_name;
v_name
--------------------------------
4
附:
為引數傳遞變數和資料位置傳遞,名稱傳遞,組合傳遞三種
1.位置傳遞:在呼叫子程式時按照引數定義的順序為引數指定相應的變數或數值
exec add_dept(40,'sales','new york');
exec add_dept(10);
2.名稱傳遞:在呼叫子程式時指定引數名,並使用關聯符號=>為其提供相應的數值或變數
exec add_dept(dname=>'sales',dno=>50);
exec add_dept(dno=>30);
3.組合傳遞:同時使用位置傳遞和名稱傳遞
exec add_dept(50,loc=>'new york');
exec add_dept(60,dname=>'sales',loc=>'new york');
檢視過程原**
oracle會將過程名,源**以及其執行**存放到資料字典中.執行時直接按照其執行**執行可查詢資料字典(user_source)
select text from user_source where name='get_name';
刪除過程
drop procedure get_name;
Oracle儲存過程例項
1.建立儲存過程 異常處理 create or replace procedure pro test2 dmlb in varchar2,dmz in varchar2,dmsm1 in varchar2,dmsm2 in varchar2,dmsm3 in varchar2,dmsm4 in va...
Oracle儲存過程例項
簡單地講,oracle儲存過程就是儲存在oracle資料庫中的乙個程式。一.概述 oracle儲存過程開發的要點是 使用notepad文字編輯器,用oraclepl sql程式語言寫乙個儲存過程 在oracle資料庫中建立乙個儲存過程 在oracle資料庫中使用sql plus工具執行儲存過程 在o...
Oracle儲存過程例項
1.基本結構 create or replace procedure 儲存過程名字 引數1 in number,引數2 in number is 變數1 integer 0 變數2 date begin 54com.cn end 儲存過程名字 2.select into statement 將sel...