web-dev-qa-db-ja.com

Oracle SqlPlus-出力をファイルに保存するが画面に表示しない

SqlPlus for Oracleを使用して、クエリの出力をファイルに保存するが、ターミナル/プロンプトに表示しない方法.

33
dharm0us

SQL * Plusマニュアルから直接
http://download.Oracle.com/docs/cd/B19306_01/server.102/b14357/ch8.htm#sthref1597

ターミナルの設定

SET TERMOUT OFFは、出力をスプールできるようにするため、画面上で表示せずにスクリプトからを表示します。

ファイルへのスプールと端末への書き込みの両方が必要ない場合は、SQLスクリプトでSET TERMOUT OFFを使用して端末出力を無効にします。

SET TERMOUTはiSQL * Plusではサポートされていません

42

これを試して:

SET TERMOUT OFF; 
spool M:\Documents\test;
select * from employees;
/
spool off;
20
Mohammad

これを試して:

sqlplus -s ${ORA_CONN_STR} <<EOF >/dev/null
10
Ashish Anand

set termout offはコマンドラインでは機能しないため、ファイルを作成します。 termout_off.sql行を含む:

set termout off

sQLプロンプトからこれを呼び出します。

SQL> @termout_off
2
pelms