32

私は試した

select * from users 
save D:\test.sql create;

しかし、SQL プラスでは「適切な終了はありません」というメッセージが表示されます Windows で oracle sql でパスを指定する方法は?

4

5 に答える 5

60

スプールを使用します。

spool myoutputfile.txt
select * from users;
spool off;

これにより、SQL*Plus を実行したディレクトリに myoutputfile.txt が作成されることに注意してください。

SQLPlus の起動時に SQL ファイル (例: "tmp.sql") からこれを実行し、"output.txt" という名前のファイルに出力する必要がある場合:

tmp.sql:

select * from users;

指示:

sqlplus -s username/password@sid @tmp.sql > output.txt

心に留めておいてください、私は今目の前にOracleインスタンスを持っていないので、私がメモリから書いたものをデバッグするためにあなた自身の仕事をする必要があるかもしれません.

于 2013-03-06T17:01:32.433 に答える
19

Marc と非常によく似ていますが、私が行う唯一の違いは、次のようなパラメーターにスプールすることです。

WHENEVER SQLERROR EXIT 1
SET LINES 32000
SET TERMOUT OFF ECHO OFF NEWP 0 SPA 0 PAGES 0 FEED OFF HEAD OFF TRIMS ON TAB OFF
SET SERVEROUTPUT ON

spool &1

-- Code

spool off
exit

そして、SQLPLUSを次のように呼び出します

sqlplus -s username/password@sid @tmp.sql /tmp/output.txt
于 2013-03-06T17:33:29.277 に答える