其實包頭就相當於java的類,里面定義了多個方法,包體就是實現方法里具體的邏輯
在out參數中引用光標,解決如果返回值過多的情況.
下面這個示例就是包頭和包體的示例
執行的時候先執行包頭,再執行包體
-
-- 2、查詢某個部門中的所有員工信息 ----> 返回的是集合
-
--包頭
-
create or replace package mypackage is
-
type empcursor is ref cursor;--這句話是自定義一個變量類型為光標類型其實就是光標,不定義也可以.
-
--下面這句就是包頭里有個存儲過程,定義一個存儲過程,可以定義多個.
-
procedure queryEmpList(dno in number,empList out empcursor);
-
end mypackage;
-
--包體,用來實現包頭里的具體的存儲過程或者存儲函數
-
create or replace package body mypackage is
-
procedure queryEmpList(dno in number,empList out empcursor)
-
as
-
begin
-
open empList for select * from emp where deptno=dno;
-
end;
-
end mypackage;
-
轉發:https://blog.csdn.net/kxj19980524/article/details/86737316
Oracle之包頭和包體的創建