Oracle SQLclをバッチで実行するには


Windows環境でOracle
SQLclを使ってテーブルデータをCSVファイルに出力するために下記のバッチファイルを書きましたが、データベースへのアクセス以外はうまくゆきません。  
正しい書き方をご教授ください。

[code]

    @echo off
    echo set sqlformat csv ^
    echo set heading off feedback off ^
    echo spool c:\PIYO.csv ^
    echo select * from PIYO ^
    echo spool off | C:\sqlcl\bin\sql -L user/password@//172.16.xx.xxx:1521/HOGE.FUGA
    
[/code]

対話式で下記のように実行するとCSVファイルが出力されます。

[code]

    cd C:\sqlcl\bin
    sql user/password@//172.16.xx.xxx:1521/HOGE.FUGA
    SQL> set sqlformat csv
    SQL> set heading off feedback off
    SQL> spool c:\PIYO.csv
    SQL> select * from PIYO;
    SQL> spool off
    
[/code]

[本家Stack Overflowの解決策](https://stackoverflow.com/questions/47038000/sqlcl-
batch-scripting-auto-connection-export-csv)を参考にしてバッチファイルを書きました。




本家の解決策と比べて `^&` が抜けてます。

[code]

    @echo off
    echo set sqlformat csv ^& ^
    echo set heading off feedback off ^& ^
    echo spool c:\PIYO.csv ^& ^
    echo select * from PIYO ^& ^
    echo spool off | C:\sqlcl\bin\sql -L user/password@//172.16.xx.xxx:1521/HOGE.FUGA
    
[/code]

