Collections ORA-06531:对未初始化集合的引用
我得到“ORA-06531:Reference to uninitialized collection”,即使在初始化集合以分配值之后也是如此。你能帮忙吗。请在下面查找代码Collections ORA-06531:对未初始化集合的引用,collections,reference,initialization,Collections,Reference,Initialization,我得到“ORA-06531:Reference to uninitialized collection”,即使在初始化集合以分配值之后也是如此。你能帮忙吗。请在下面查找代码 create or replace TYPE TYP_GRP_ID is object (grp_id number); create or replace TYPE TAB_GROUP is table of TYP_GRP_ID; create or replace PACKAGE TEST AS
create or replace TYPE TYP_GRP_ID is object (grp_id number);
create or replace TYPE TAB_GROUP is table of TYP_GRP_ID;
create or replace PACKAGE TEST AS
PROCEDURE TEST;
END;
create or replace PACKAGE BODY TEST AS
PROCEDURE TEST
IS
acc_arr TAB_GROUP;
BEGIN
acc_arr.EXTEND;
acc_arr := new TAB_GROUP(null);
acc_arr(acc_arr.LAST).grp_id := 1000;
dbms_output.put_line(acc_arr(acc_arr.LAST).grp_id);
END;
END;
提前谢谢
Mathew需要初始化acc\u arr,请参见下面的更新代码
create or replace PACKAGE BODY TEST AS
PROCEDURE TEST
IS
acc_arr TAB_GROUP := TAB_GROUP();
BEGIN
acc_arr.EXTEND;
-- acc_arr := new TAB_GROUP(null);
acc_arr(acc_arr.LAST).grp_id := 1000;
dbms_output.put_line(acc_arr(acc_arr.LAST).grp_id);
END;
END;
需要初始化acc_arr,请参阅下面的更新代码
create or replace PACKAGE BODY TEST AS
PROCEDURE TEST
IS
acc_arr TAB_GROUP := TAB_GROUP();
BEGIN
acc_arr.EXTEND;
-- acc_arr := new TAB_GROUP(null);
acc_arr(acc_arr.LAST).grp_id := 1000;
dbms_output.put_line(acc_arr(acc_arr.LAST).grp_id);
END;
END;