将列标题删除到输出文本文件中

Mar*_*ong 28 oracle sqlplus spool columnheader oracle-sqldeveloper

我想从Oracle SQL Developer创建我的查询的平面文件(文本文件).

我已经使用SPOOL通过脚本文本文件成功创建了文本文件,但我想将每列的标题删除到我的输出中.

我得到这个输出:

Header000001 Header000002
------------ ------------
Adetail1     Bdetail1
Adetail2     Bdetail2
Adetail3     Bdetail3

但是,我想得到这个输出:

Adetail1Bdetail1
Adetail2Bdetail2
Adetail3Bdetail3

我已经尝试过命令"set heading off",但是有消息说:

"SQLPLUS COMMAND Skipped: set heading off".
Run Code Online (Sandbox Code Playgroud)

这些是我发出的输入:

spool on; 
spool C:\SQLFiles\PSB_ATMLKP.txt; 
set newpage 0; 
set echo off; 
set feedback off; 
set heading off; 

select terminal_number, terminal_name from terminal_table; 

spool off;
Run Code Online (Sandbox Code Playgroud)

Lal*_*r B 26

SQLPLUS COMMAND跳过:设置标题关闭

该消息很可能是因为您没有执行它SQL*Plus,而是一些基于GUI的工具.您正在SQL Developer中使用SQLPlus命令.并非所有SQL*Plus命令都可以保证与SQL Developer一起使用.

我建议你在SQLPlus中执行脚本,你会发现没有问题.

你需要:

SET HEADING OFF

这不包括输出中的列标题.

或者,你也可以这样做:

SET PAGESIZE 0

UPDATE

SQL Developer版本3.2.20.10中测试:

spool ON
spool D:\test.txt
SET heading OFF
SELECT ename FROM emp;
spool off
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

假脱机文件创建没有问题:

> set heading OFF
> SELECT ename FROM emp
SMITH      
ALLEN      
WARD       
JONES      
MARTIN     
BLAKE      
CLARK      
SCOTT      
KING       
TURNER     
ADAMS      
JAMES      
FORD       
MILLER     

 14 rows selected 
Run Code Online (Sandbox Code Playgroud)


小智 5

添加:

set underline off
Run Code Online (Sandbox Code Playgroud)

到 SQL 脚本的开头。

在我的 SQL 脚本中,我有:

SET TERMOUT OFF
set colsep |
set pagesize 0 
set trimspool on
set pagesize  0 embedded on
SET heading on
SET UNDERLINE OFF
spool file_path
-- your SQL here
spool off
Run Code Online (Sandbox Code Playgroud)

请参阅本书以供参考。