Oracle儲存過程的簡單舉例
阿新 • • 發佈:2018-10-31
一、建立測試資料
--建立測試資料:
create table person(編號 number(10),姓名 varchar2(20),密碼 varchar2(20));
insert into person values(1,'xzw','888');
select * from person;
查詢結果如下:
二、建立儲存過程
--建立儲存過程: create or replace procedure query_person(ID IN OUT NUMBER,NAME OUT VARCHAR2,pwd OUT VARCHAR2) is begin select 編號, 姓名, 密碼 INTO id,NAME,pwd from person where 編號=ID; end query_person;
在plsql的左側欄-->Procedures中會顯示剛剛建立的儲存過程,如果所寫的儲存過程是錯誤的,在其上會顯示一個紅色的叉號:
這裡,我們建立的儲存過程是正確的。
三、呼叫儲存過程
--呼叫儲存過程: declare ID number(10); NAME varchar2(50); pwd varchar2(20); begin ID := 1; query_person(ID,NAME,pwd); --呼叫儲存過程 dbms_output.put_line('ID is: '||ID); dbms_output.put_line('name is: '||NAME); dbms_output.put_line('pwd is: '||pwd); exception when others then dbms_output.put_line(sqlerrm); end;
呼叫儲存過程後,正常情況下會輸出我們想要的資訊,如下圖所示:
如果發生異常則會打印出sqlerrm的相關資訊,如下:
ORA-0000: normal, successful completion