我正在尝试打印查询结果。这是Oracle SQL脚本:
set linesize 32767;
set pagesize 0;
set newpage 0;
set space 0;
set echo off;
set feedback off;
set verify off;
set heading off;
set sqlprompt '';
set trimspool on;
set headsep off;
spool C:\asd.tmp
SELECT PROCESSNAME FROM ACTIVEPROCESSLIST ORDER BY PROCESSID;
spool off;
但是“asd.tmp”的内容是:
从ACTIVEPROCESSLIST订购SELECT PROCESSNAME ORDER BY PROCESSID
它只打印查询文本,而不是它的结果。如何查询查询结果?
注意:我使用的是“sqldeveloper-4.0.3.16.84-x64”,它以管理员身份运行。设置上面给出的属性也可能是无意义的。我已经尝试了它们的一些组合并执行了没有设置的假脱机命令。
我可以用C ++执行的任何其他解决方案也适合我。
答案 0 :(得分:0)
你可以使用命令行/ sqlplus。尝试将脚本保存为文件,然后在命令行中保存:
sqlplus -s [username]/[password]@[sid] @file_path > output.txt
答案 1 :(得分:0)
that link中有另一种方式。我推荐它。它不像假脱机解决方案那样快,但它至少在我的项目中起作用。
替代方式存在问题,但this stackoverflow question中的答案运行正常。我现在正在使用它。