oracle—varray

 VARRAY(变长数组)通俗的讲就是一个存储有序的元素集合,而其每个元素都有一个相关索引,该索引相对应元素在数组中的位置。变长数组存在大小的限制,但是可以动态进行更改。

Create Type varray_phone as varray(3) of varchar2(50); 

  

1. 声明和初始化VARRAY变量

不可以直接声明一个VARRAY变量。必须先声明一个包含这个数组最大容量的类型:

  1. type dir_array is varray(10000) of bill_files.directory%type;

然后,你就可以用这个类型声明VARRAY变量:

indirectory dir_array;

对这个数组进行操作以前,必须先初始化该数组。你既可以在声明它的时候对其初始化,也可以在声明后对其赋值。

下面展示了在声明的同时对其进行初始化:

indirectory dir_array:=dir_array('','');

2. 从指定的条目处取值

把条目的数目作为下标。下标可以是返回整数值(该值小于或等于数组条目数)的任意表达式,如:

dir:=indirectory(3);

dir:=indirectory(i+1);

3. 得到数组的容量

 

indirectory.count();   得到当前数组的实际大小

indirectory.limit();     得到当前数组的最大值

4. 遍历VARRAY中的值

for i in 1…indirectory.count() loop

or  

for i in indirectory.first()…indirectory.last() loop 

or

PRIOR(n)和NEXT(n)方法,这两个方法分别返回给定条目的前一个和后一个条目的下标

 

5. 对VARRAY的扩展缩减

indirectory.extend(k)  在VARRAY的最后追加k个新的条目。如果k没有被指定,只增加一个条目。新增的条目没有值(默认为NULL),但是你可以对它们进行初始化。

indirectory.TRIM(k)   在VARRAY的尾部删除最后k个条目。当k没有被指定时,删除最后一个条目。已被删除的条目的值将丢失。

indirectory.DELETE()  删除数组中的所有条目,并把其容量设置为0

转载于:https://www.cnblogs.com/lucyawei/archive/2013/03/04/2942398.html

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值