程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle存儲過程的用法簡介

Oracle存儲過程的用法簡介

編輯:Oracle數據庫基礎

如果你在Oracle存儲過程的用法的實際運用中中,你對Oracle存儲過程有不解之處時,你可以通過以下的文章對其的實際應用與功能有所了解,以下是文章的具體介紹,望你浏覽完以下的內容會有所收獲。

  1. create table stuInfo  
  2. (  
  3. stuID int primary key,  
  4. stuName varchar2(20)  
  5. )  
  6. create or replace procedure proc1  
  7. is  
  8. begin  
  9. insert into stuInfo values(1,'liheng');  
  10. end;  
  11. create or replace procedure proc2  
  12. (  
  13. v_ID int,  
  14. v_Name varchar2  
  15. )  
  16. is  
  17. begin  
  18. insert into stuInfo values(v_ID,v_Name);  

commit;記得要提交

  1. end;  
  2. create or replace procedure proc3  
  3. (  
  4. v_ID int,  
  5. v_Name out varchar2  
  6. )  
  7. is  
  8. varName stuInfo.Stuname%type;  
  9. begin  
  10. select stuName into varName from stuInfo where stuID=v_ID;  
  11. v_Name:=varName;  
  12. end;  

在Oracle存儲過程的用法中我們要返回全部記錄

  1. create or replace package PKG_STUINFO is  
  2. type stuInfoCursorType is ref cursor;  
  3. procedure getStuInfo (stuInfoCursor out stuInfoCursorType);  
  4. end;  
  5. create or replace package body PKG_STUINFO is  
  6. procedure getStuInfo (stuInfoCursor out stuInfoCursorType)  
  7. is  
  8. var_cursor stuInfoCursorType;  
  9. begin  
  10. open var_cursor for select * from stuInfo;  
  11. stuInfoCursor:=var_cursor;  
  12. end;  
  13. end;  

根據編號返回記錄

  1. create or replace package PKG_STUINFO is  
  2. type stuInfoCursorType is ref cursor;  
  3. procedure getStuInfo 
    (v_ID int,stuInfoCursor out stuInfoCursorType);  
  4. end;  
  5. create or replace package body PKG_STUINFO is  
  6. procedure getStuInfo 
    (v_ID int,stuInfoCursor out stuInfoCursorType)  
  7. is  
  8. var_cursor stuInfoCursorType;  
  9. begin  
  10. if v_ID=0 then  
  11. open var_cursor for select * from stuInfo;  
  12. else  
  13. open var_cursor for select * from stuInfo where stuID=v_ID;  
  14. end if;  
  15. stuInfoCursor:=var_cursor;  
  16. end;  
  17. end;  

根據姓名返回記錄

  1. create or replace package PKG_STUINFO is  
  2. type stuInfoCursorType is ref cursor;  
  3. procedure getStuInfo (v_Name varchar2,stuInfoCursor out stuInfoCursorType);  
  4. end;  
  5. create or replace package body PKG_STUINFO is  
  6. procedure getStuInfo (v_Name varchar2,stuInfoCursor out stuInfoCursorType)  
  7. is  
  8. var_cursor stuInfoCursorType;  
  9. begin  
  10. if v_Name =' ' then  
  11. open var_cursor for select * from stuInfo;  
  12. else  
  13. open var_cursor for select * from stuInfo where stuName like '%'||v_Name||'%';  
  14. end if;  
  15. stuInfoCursor:=var_cursor;  
  16. end;  
  17. end;  
  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved