Exceptions Raised in Declarations:
Exceptions can be raised in declarations via faulty initialization expressions. For instance, the following declaration raises an exception since the constant limit cannot store numbers larger than 999:
DECLARE
limit CONSTANT NUMBER(3) := 5000; -- raises an exception
BEGIN
...
EXCEPTION
WHEN OTHERS THEN ... -- cannot catch the exception
The Handlers in the current block cannot catch the raised exception since an exception raised in a declaration propagates instantly to the enclosing block.: