私はsqlplusを上で実行しようとしているSQLスクリプトのテンプレートを見ることができました下:印刷エラー
WHENEVER SQLERROR EXIT 1 ROLLBACK
WHENEVER OSERROR EXIT 1 ROLLBACK
BEGIN
-- Doing some Insert
END;
/
INSERT INTO TMP_TABLE VALUES('A', 'B')
COMMIT;
QUIT;
/
このスクリプトは私のローカルシステムとI上のファイル(Test1.sql)で提供されていますWindowsのコマンドライン・コンソールからOracleに接続してこの問合せを実行しています。 cmdの下に行を入力します。私は意図的なセミコロンと1つの文(INSERT INTO...)
を終了していませんでしたSQLスクリプトで
C:\Users\myself> sqlplus UNAME/[email protected]//DB IP:PORT/SID @C:\Users\Test1.sql
(上記参照)。今、私は上記の指示に従うことによって、このスクリプトを実行すると、プログラムが正常に実行し、メッセージ出力します
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 Navigatorツール上のスクリプトの同じセットを実行すると、私はエラーの下に取得し、それが正しいこと:
を[10]:(エラー):ORA-00933:SQLコマンドが正常に
を終了していないスクリプトはこのエラーを報告し、代わりに「完全なコミット」のようなメッセージが表示されていない理由を私は理解していないです。
Windowsコマンドコンソールを使用して同じスクリプトをsdlplusで実行しようとしているときに、スクリプトでこのエラーをコンソールに表示させるにはどうすればいいですか?