oracle数据库对象-包

程序包是ORACLE PL/SQL的一个特性,它就像是一个容器或者说是一个命名空间,可以将各种逻辑相关的类型、常量、变量、异常和子程序结合在一起。为开发人员编写大型复杂应用程序时,提供了一个良好的组织单元。

当定义好了程序包之后,应用程序就可以通过包来访问各种不同的功能单元,而不用担心过多零散的子程序导致程序代码的松散。

一个PL/SQL程序包包含如下两个部分组成:
·包规范:主要是包的一些定义信息,不包含具体的代码实现部分。
·包体:包体是对包规范中声明的子程序的实现部分,包体的内容对于外部应用程序来说是不可见的,包体就像是一个黑匣子一样,是对包规范的实现。

1、包规范基本语法

CREATE [OR REPLACE] PACKAGE PACKAGE_NAME
{IS | AS}
  PACKAGE_SPECIFICATION
END PACKAGE_NAME;


例子:

--/
CREATE OR REPLACE PACKAGE pack_fun IS
--定义一个函数返回两个数的和
FUNCTION fun_add(num1 IN NUMBER, num2 IN OUT NUMBER) RETURN NUMBER;
--定义一个函数返回两个数的差
FUNCTION fun_sub(num1 IN NUMBER, num2 IN OUT NUMBER) RETURN NUMBER;
--定义一个存储过程显示九九乘法表
PROCEDURE proc_1;
END;
/

继续阅读oracle数据库对象-包