1.COUNT:返回集合元素的个数
语法:<集合名>.count
2.LIMIT:返回VARRAY 集合的最大的元素个数,对索引表和嵌套表不适用。
语法:<VARRAY 变量名>.LIMIT
3.FIRST:返回集合中的第一个元素的下标号,对于VARRAY 集合始终返回1。
语法:<集合变量名>.FIRST
4.LAST:返回集合中最后一个元素的下标号,对于VARRAY 返回值始终等于COUNT。
语法:<集合变量名>.LAST
5. NEXT:返回在指定元素i 之后紧挨着它的元素的下标号,如果指定元素是最后一个元素,则返回NULL。
语法: <集合变量名>.NEXT(<下标>)
6.PRIOR:返回在指定元素i 之前紧挨着它的元素的下标号,如果指定元素是第一个元素,则返 回NULL。
语法:<集合变量名>.PRIOR(<下标>)
7.EXISTS:如果指定下标对应的元素已经初始化,则返回TRUE,否则返回FALSE。
语法:<集合变量名>.EXISTS(<下标>)
8.DELETE:1.下标参数省略时删除集合中所有元素,否则删除指定下标对应的元素,如果指定下标 为NULL,则集合保持不变。
2.删除集合中下标从下标1 到下标2 的所有元素。
语法:1.<集合变量名>.DELETE([<下标>])
2.<集合变量名>.DELETE(<下标1>, <下标2>)
9.TRIM:n 参数省略时从集合末尾删除一个元素,否则从集合末尾开始删除n 个元素。本方法不适用于索引表。
语法:<集合变量名>.TRIM([<n>])
10.EXTEND:1.n 参数省略时在集合末尾扩展一个空元素,否则在集合末尾扩展n 个空元素。本方法 不适用于索引表。
2. 在集合末尾扩展n 个与指定下标元素相同的元素。本方法不适用于索引表。
语法:1.<集合变量名>.EXTEND([<n>])
2.<集合变量名>.EXTEND(<n>,<下标>])
例子:
declare
type listint is table of int;
v listint := listint(1,2,3,4,5,6);
begin
print('最初v 中共有 ' || v.COUNT || '个元素。');
v.EXTEND(2);
print('现在v 中共有 ' || v.COUNT || '个元素。');
v.delete(3);
print('现在v 中共有 ' || v.COUNT || '个元素。');
v.TRIM(2); -- 删除掉末尾的两个元素
print('现在v 中共有 ' || v.COUNT || '个元素。');
END;
结果:
最初v 中共有 6个元素。
现在v 中共有 8个元素。
现在v 中共有 7个元素。
现在v 中共有 5个元素。