oracle 包

 package就是用来封装过程,函数用的。
一个package可以存放多个过程,函数。
调用是:
包名.过程名1
包名.过程名2

 

http://hank4ever.javaeye.com/blog/472336

包 (package)

  (1)包的意义

  pl/sql为了满足程序模块化的需要,除了块(block)和子程序结构外,还引入了包的构造。

  包是一种数据库对象,将逻辑上相关的pl/sql类型、对象和子程序组合成一个更大的单位。包有两个部分:包说明(specification)和包体(body)。说明部分是为应用程序的接口,它申明类型、常量、例外、游标和可用的子程序。体定义游标和子程序,实现说明。应用程序仅对包说明中的申明是可见的和可存取。如果oracle具有procedure选件,包可以编译、存贮在oracle数据库中,其内容可为许多应用共享。当用户第一次调用一包装的子程序时,整个包装入到内存,所以在以后对包中子程序调用时,不再需要i/o操作,故包可提高效率和改进性能。

  pl/sql的包具有信息隐蔽性(information hiding),仅在算法和数据结构设计有关层可见。在前面讲到的过程中,可将过程说明和过程体组成一个程序单位。也可将过程说明与它的过程体分开,在这种情况下,将过程放置在一个包中,可隐蔽实现的细节。也可在包中定义过程,而该过程在包说明中没有定义过程说明,这样定义的过程仅在包内使用。

  (2)包的定义

  包的定义形式如下:

  包说明:

  package 包名 is

  --变量说明;

  --游标说明;

  --例外说明;

  --记录说明;

  --plsql表说明;

  --过程说明;

  --函数说明;

  end[包名];

  包体:

  package body 包名 is

  --变量名说明;

  --游标说明;

  --游标申明;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值