2011-02-08 3 views
4

Мы имеем следующий пакетный скрипт:Обнаружение ошибки sqlplus в сценарии dos batch?

(
echo @release.sql 
echo exit 
) | sqlplus x/[email protected] 

if %errorlevel% gtr 1 goto dberror 

Издание является - заявление if %errorlevel% gtr 1 никогда не кажется, чтобы быть правдой, если есть SQL ошибка.

Если положить команды мусора в файле release.sql, SQLPLUS это жалуются:

SQL> SP2-0042: unknown command "blah" - rest of line ignored. 
SQL> Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production 

Но %errorlevel% все еще равен 0. Как мы можем определить, что произошла ошибка SQL?


Update: этот код появляется на работе некоторых ошибок SQL. Она будет работать, если я drop table blah, но это не будет работать только с командой blah

ответ