sqlplus客户端将远程结果重定向到本地文件

时间:2017-06-22 19:13:14

标签: sql oracle terminal sqlplus

我正在远程访问oracle数据库,我需要将结果重定向到本地csv文件。我正在设置一些选项,一个简单的SQL查询语句,最后我重定向到本地文件。 基于此linkthis,我做到了:

./sqlplus user/password@host:1521/SID <<< "SET PAGESIZE 40000 FEEDBACK OFF MARKUP HTML ON select * from mytable where ROWNUM <= 10" >> test_file.xls

这样做我得到了这个Oracle错误:SP2-0158:未知的SET选项“select”。错误是自我解释的。我知道我需要这些set语句来格式化我的输出。删除SET语句工作正常但输出。

要输出,我不插入SPOOL语句,因为该文件将在远程计算机上生成。

如何将结果发送到我的本地文件?

1 个答案:

答案 0 :(得分:1)

试试:

./sqlplus user/password@host:1521/SID <<EOF >> test_file.xls
SET PAGESIZE 40000 FEEDBACK OFF MARKUP HTML ON 
select * from mytable where ROWNUM <= 10;
exit
EOF