package、package body

一女同事问我oracle 存储过程的问题,后我问及package、package body 关系以及理解,开始说可以说出个一二,但是也还是有迷糊的地方,后归纳理清了下。
 
简单理解就是:
 package 类似声明(接口)
 package body,类似实现  
 
 
 例:
 
create or replace package test_package is    
--purpose:package include function interface
function proc_20101230(aNum in Integer,bNum in Integer) return integer;

end test_package;
 
 
CREATE OR REPLACE PACKAGE BODY test_package IS
--implement the interface in the package    

FUNCTION proc_20101230(
aNum in Integer ,
bNum in Integer
)
return integer
as
begin
     return aNum + bNum;
END;

END test_package;
 
 
 
在PL/SQL中,FUNCTION 和 PROCEDURE都可以通过TEST来调试。
此外FUNCTION可以在SQL 窗口中,类似
select proc_20100907_03(1,2) from dual; 调用
PROCEDURE 可以在命令窗口中,类似
SQL> exec test_procedure;
 
PL/SQL procedure successfully completed 调用
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章