ORA-06533: Subscript beyond count

on

yup. This error happend after the migration from 11g to 12c.

What’s going on.

Having this type defined:

CREATE OR REPLACE TYPE jka_nt_varchar2_100
 AS TABLE OF VARCHAR2(100).

In 11g it was no problem when the variable based on this type was nog properly initialized:

declare
 l_values jka_nt_varchar2_100 := jka_nt_varchar2_100();
begin
 l_values(1):='abcd';
end;

Only in 12c this causes the ORA-06533 error.

But this can easily be corrected by a proper handling of collections:

declare
 l_values jka_nt_varchar2_100 := jka_nt_varchar2_100();
begin
 l_values.extend;
 l_values(l_values.last):='abcd';
end;