包和儲存過程

2021-04-19 21:04:04 字數 1028 閱讀 3413

最近一直在用oracle做開發,由於原來熟悉sqlserver,所以收穫還蠻大的,把一些常用寫下,好方便查閱.

建立包create or replace package packagename

astype curs is ref cursor;

procedure procedurename

invar1 varchar2,

invar2 varchar2,

invar3 number,

invar4 tablename.colname%type,

invar5 out varchar2    

procedure procedurename2

invar1 varchar2,

cur out curs

end;

建立儲存過程

create or replace package body packagename

asprocedure procedurename

invar1 varchar2,

invar2 varchar2,

invar3 number,

invar4 tablename.colname%type,

invar5 out varchar2  --順序不能變

isv_var1 varchar2(50);

v_var2 number(20);

v_var3 tablename%rowtype;

v_var4 varchar(50):='';

begin

--處理語句...

--結束之前要給輸出變數賦值

invar5:= '輸出';

end procedurename;

procedure procedurename2

invar1 varchar2,

cur out curs

isbegin

open cur is select * from tablename;

end procedurename2;

儲存過程包Package

1.如果業務中需要用到大量的儲存過程,則需要用package對儲存過程進行進一步的封裝,package 分為package宣告以及packge body,需要先宣告儲存過程,儲存過程中相關的資料,在package body中實現宣告中的儲存過程。類似於c 中的class,package宣告封裝業務相...

出庫儲存過程和分頁儲存過程

1 create procedure addcheckout 2 proid int,3 商品主鍵 4 oprerator varchar 50 5 操作人 6 checkoutnum int,7 出庫數量 8 out result int 返回的儲存過程是否執行成功的標誌位9 10begin 11...

oracle 建立包和儲存過程並呼叫舉例

規範 create orreplace package test pkg is test pkg為包名 procedure showmessage 宣告乙個過程 function myadd x innumber,y innumber return number 宣告函式 endtest pkg 主...