【发布时间】:2017-01-30 23:59:33
【问题描述】:
我有一个 VARRAY,我想通过使用循环向这个 VARRAY 添加元素。这是我迄今为止尝试过的。
DECLARE
TYPE code_array_ IS VARRAY(26) OF VARCHAR2(6);
codes_ code_array_;
BEGIN
FOR i IN 1..26 LOOP
codes_(i) := dbms_random.string('U',6);
END LOOP;
END;
上面的代码给了我一个错误
“ORA-06531:引用未初始化的集合”
【问题讨论】:
-
你确定你需要一个可变数组,而不是一个嵌套表吗? 26 的限制是否非常有用,可以弥补嵌套表所失去的功能?
-
@William_Robertson VArray 维护元素顺序,而嵌套表和关联数组则没有。在需要元素顺序的应用程序中,varray 是您唯一的选择。