ORA-00604 error occurred at recursive SQL level string Cause An error occurred while processing a recursive SQL statement (a statement applying to internal dictionary tables).
Action If the situation described in the next error on the stack can be corrected, do so; otherwise contact Oracle Customer Support.
ORA-01000 maximum open cursors exceeded Cause A host language program attempted to open too many cursors. The initialization parameter OPEN_CURSORS determines the maximum number of cursors per user.
Action Modify the program to use fewer cursors. If this error occurs often, shut down Oracle, increase the value of OPEN_CURSORS, and then restart Oracle.
Action If the situation described in the next error on the stack can be corrected, do so; otherwise contact Oracle Customer Support.
ORA-01000 maximum open cursors exceeded Cause A host language program attempted to open too many cursors. The initialization parameter OPEN_CURSORS determines the maximum number of cursors per user.
Action Modify the program to use fewer cursors. If this error occurs often, shut down Oracle, increase the value of OPEN_CURSORS, and then restart Oracle.
type t_no1 is ref cursor;
type t_no2 is ref cursor;
改为:
type t_no1 is cursor;
type t_no2 is cursor;
试试。