我有一個VARRAY,我想通過循環向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:引用未初始化的收集」
你確定你需要一個varray,而不是一個嵌套的表嗎?那麼這26個限制是非常有用的,它彌補了嵌套表所帶來的功能損失? –
@William_Robertson VArray維護元素順序,而嵌套表和關聯數組不會。在需要元素順序的應用程序中,varray是您唯一的選擇。 – JeramieH