在通过unix从Oracle调整数据时,我以非结构化的方式获取数据,而我希望以表格格式以列名或逗号分隔格式在文件中写入输出。
答案 0 :(得分:0)
如果您要从SQL * Plus进行假脱机,请尝试设置以下可能产生漂亮结果的选项(它是OraFAQ Forum上提供的调整版Michel Cadot)
[编辑] 直播示例:
为了避免SELECT语句成为假脱机文件的一部分,我将所有内容保存到EMPS.SQL文件中,并从SQL提示符运行它。
EMPS.SQL
文件的内容:
set termout off
set trimspool on
set echo off
set verify off
set autoprint off
set serveroutput off
set arraysize 1000
set pagesize 0
set linesize 100
set long 10000
set numwidth 10
set feedback off
set colsep ';'
col empno format 99999
col ename format a10
col sal format 999G990
spool emps.txt
select empno, ename, sal from emp;
spool off
执行和结果:
SQL> @emps
SQL>
SQL> $type emps.txt
7839;KING ; 5.000
7698;BLAKE ; 2.850
7782;CLARK ; 2.450
7566;JONES ; 2.975
7788;SCOTT ; 3.000
7902;FORD ; 3.000
7369;SMITH ; 800
7499;ALLEN ; 1.600
7521;WARD ; 1.250
7654;MARTIN ; 1.250
7844;TURNER ; 1.500
7876;ADAMS ; 1.100
7900;JAMES ; 950
7934;MILLER ; 1.300
SQL>