概述
包(Package)可称程序包,用于将逻辑相关的PLSQL块或元素(变量、常量、自定义数据类型、异常、过程、函数、游标)等组织在一起,作为一个完整的单元存储在数据库中,用名称来标识的程序包。
说白了就是封装(不是java中的包,而是相当于java中的类,而且是静态类)。可以通过分装的包名调用元素或块。
基本概念
包有两个部分,分别是说明部分和包体部分。这两个部分独立的存储在数据字典中。
说明部分相当于接口,而包体部分相当于实现类。这两个部分要分开编写。
在编写程序包时,应该将公用的,通用的过程和函数编写进去,以便再次共享使用。
包的创建
包说明部分的创建
格式如下:
CREATE <OR REPLACE> PACKAGE <包名>
IS
-- 自定义数据类型
-- 常量声明定义
-- 变量声明定义
-- 游标声明定义
-- 过程和函数的声明
END <包名>
包体部分的创建
格式如下:
CREATE <OR REPLACE> PACKAGE BODY <包名>
IS
-- 游标,函数,过程的具体实现定义
END <包名>
包的调用
方式为:
包名.变量名(常量名)
包名.过程名
包名.函数名
包名.游标名
一旦包创建好之后,便可以随时调用其中的内容。
包的删除
DROP PACKAGE <包名>