$VAR1 = [ 'abc', 'efg', 'hij' ]; input: $VAR1 = [ 'abc', 'efg', 'hij' ]; DBD::Oracle::st execute failed: ORA-06550: line 4, column 16: PLS-00382: expression is of wrong type ORA-06550: line 4, column 9: PL/SQL: Statement ignored ORA-06550: line 8, column 21: PLS-00382: expression is of wrong type ORA-06550: line 8, column 9: PL/SQL: Statement ignored (DBD ERROR: error possibly near <*> indicator at char 70 in 'DECLARE tbl SYS.DBMS_SQL.VARCHAR2_TABLE; BEGIN tbl := <*>:mytable; :cc := tbl.count(); tbl(1) := 'def'; tbl(2) := 'ijk'; :mytable := tbl; END; ') [for Statement "DECLARE tbl SYS.DBMS_SQL.VARCHAR2_TABLE; BEGIN tbl := :mytable; :cc := tbl.count(); tbl(1) := 'def'; tbl(2) := 'ijk'; :mytable := tbl; END; " with ParamValues: :cc=undef, :mytable=ARRAY(0x2519238)] at ./inout.pl line 58. Use of uninitialized value $cc in print at ./inout.pl line 60. Result: cc= arr=$VAR1 = [];