SQLCL 批处理脚本:自动连接 + 导出 CSV

SQLCL Batch Scripting : Auto Connection + EXPORT CSV

SQLCL正是我所需要的,但我在一件小事上遇到了很大的困难:

我想制作一个带有自动连接的脚本(批处理文件),紧接在 EXPORT CSV 之后(在远程桌面上:不在服务器上)。

所以我在批处理文件中使用带有 SQLCL 的管道方法:

echo SET SQLFORMAT CSV <
echo SPOOL export.csv <
echo SELECT COUNT(*) FROM ARTICLE; <
echo SPOOL OFF | C:\Work\Soft\sqlcl\bin\sql.exe login/passwd@xxx.xxx.xxx.xxx:1521/DB.SCH

它正在工作(控制台中没有错误)但是无法找到文件 export.csv :当我更改目标时 c:\... 它也正在工作但无法找到创建的文件。它与 SQL Developer 一起工作正常,文件是在我的桌面上创建的,所以我不明白为什么 SQLCL 的情况不同。

我从 oracle 平台得到了答案:

@echo off  
echo SET SQLFORMAT CSV ^& ^  
echo SET FEEDBACK OFF ^& ^  
echo SPOOL export.csv ^& ^  
echo SELECT COUNT^(*^) FROM dual ^& ^  
echo SPOOL OFF |  C:\Work\Soft\sqlcl\bin\sql.exe sql -noupdates -s -l login/passwd@xxx.xxx.xxx.xxx:1521/DB.SCH

感谢 Gaz in Oz