下面你可以看到,我試圖在sqlplus中執行SQL腳本的模板:打印錯誤用sqlplus
WHENEVER SQLERROR EXIT 1 ROLLBACK
WHENEVER OSERROR EXIT 1 ROLLBACK
BEGIN
-- Doing some Insert
END;
/
INSERT INTO TMP_TABLE VALUES('A', 'B')
COMMIT;
QUIT;
/
該腳本可在一個文件中(Test1.sql)我的本地系統和我我通過Windows命令行控制檯連接到Oracle來運行此查詢。在cmd上鍵入下面的行。
C:\Users\myself> sqlplus UNAME/[email protected]//DB IP:PORT/SID @C:\Users\Test1.sql
在SQL腳本我有目的並沒有終止一個語句(INSERT INTO...)
用分號(見上文)。現在,當我按照上面的指示運行此腳本,程序運行成功並顯示一條消息:
SQL*Plus: Release 10.2.0.1.0 - Production on Fri Apr 6 16:50:19 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options
PL/SQL procedure successfully completed.
Commit complete.
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64
bit Production
With the Partitioning, Automatic Storage Management, OLAP, Data Mining
and Real Application Testing options
當我運行相同的一組對我的SQL導航工具腳本,我得到以下錯誤,這是正確的:
[10]:(錯誤):ORA-00933:SQL命令不能正確地結束
我不理解爲什麼腳本沒有報告這個錯誤,而是像「提交完整的」顯示消息。
你能告訴我如何讓我的腳本在控制檯上拋出這個錯誤,當我試圖通過使用Windows命令控制檯的sdlplus運行相同的?