There is a package with type.
CREATE OR REPLACE PACKAGE MY_TYPES IS
PRAGMA SERIALLY_REUSABLE;
SUBTYPE my_number IS NUMBER(3,0);
END MY_TYPES;
/
There is a procedure:
DECLARE
PROCEDURE print(my_number_i IN my_types.my_number) IS
BEGIN
dbms_output.put_line(my_number_i);
END;
BEGIN
print(my_number_i => 35);
END;
/
The problem is that such a call gives an error in PL/SQL Developer.
ORA-06502: PL/SQL: numeric or value error: number precision too large.
But if you substitute the value my_number_i => !=35
, the procedure is completed.
However, if you run it from SQL Developer, everything works. If you run it via SQL*Plus, it also works. It only does not work from PL/SQL Developer.
Please tell me what the problem might be?