我正在使用 Solaris。我必须登录 sql plus 并运行一些查询,这会产生巨大的结果集。
我想将所有这些复制到一个文件中。在 unix 或 sqlplus 中是否有任何命令?
使用SPOOL
命令:
SQL> SPOOL /opt/output
SQL> SELECT ...
SQL> SPOOL OFF
设置Oracle环境
(有一些方法可以在命令行上指定用户名/密码 - 这不是最好的方法,尤其是当其他用户可以在服务器上“ps”并查看您的密码时)
sqlplus -s username/password <<-!!
set trimspool on trimout on pages 0 feedback off linesize 1000 echo off verify off
spool file.out
select sysdate from dual;
exit
!!
如果您在命令行上,则只需使用 > 和 2> 将 stdout 和 stderr 分别重定向到日志文件
func > out.log