重複している可能性について謝罪しますが、この作業を行うことはできません。私はWindowsスケジューラースクリプトから実行したいので、スプール出力の位置を調整するために "C:\ Path \ To"のようなパラメーターを渡そうとしています.sqlファイルがあります。 print文は正しい道を示し、このようなヘッダではおろか:SQL Developer(SQLcl)を使用した動的な場所へのスプール
ARGPATH
---------------------------------------------------------------------------- ----
C:\Path\To\output.txt
しかし、私は、ダイナミックなファイルの場所パラメータのこのタイプで動作するようにスプールを得るように見えることはできません。出力がない場合は、スクリプトを実行する際にエラーは発生しません。 SQL DeveloperのCLI SQLcl ver 4.2、12.1.0.2.0を使用しています。残念ながら、私はこの特定のツールに固執しており、一般的に開発環境をほとんど制御していません。いくつかのデフォルトの場所の代わりにローカルフォルダ(SQLスクリプトが存在する場所)にスプールする方法についての説明も、大歓迎です。前もって感謝します!
set heading off
var argpath varchar2(100)
exec :argpath := Trim('&1'||'output.txt')
spool argpath;
print argpath;
select count (*) .../select statement/
spool off;
exit
たぶん私はすべてが期待と同じように動作し、私は明示的にパスを宣言、すなわち
spool C:\Path\To\output.txt
ことを追加する必要があります。