SQL Разработчик поддерживает команды SQL* Plus whenever sqlerror
и whenever oserror
.
Они позволяют остановить обработку, когда скрипт попадает в проблему.
Например, если я запускаю это:
select * from dual
where ;
select * from dual;
whenever sqlerror exit
whenever oserror exit
select * from dual
where ;
select * from dual;
Вывод будет таким (обратите внимание, что окончательного выбора не произошло):
SQL> select * from dual
2 where ;
Error starting at line : 2 in command -
select * from dual
where
Error at Command Line : 3 Column : 7
Error report -
SQL Error: ORA-00936: missing expression
00936. 00000 - "missing expression"
*Cause:
*Action:
SQL>
SQL> select * from dual;
DUMMY
X
SQL>
SQL> whenever sqlerror exit
SQL> whenever oserror exit
SQL>
SQL> select * from dual
2 where ;
Error starting at line : 10 in command -
select * from dual
where
Error at Command Line : 11 Column : 7
Error report -
SQL Error: ORA-00936: missing expression
00936. 00000 - "missing expression"
*Cause:
*Action: