我有一个sql
文件,下面提到过,当我从sqlplus
执行时,它不会打印列名,而选择输出也会在多行中打印。
SET head OFF;
SET feedback OFF
SET verify OFF
SET echo OFF
SET termout OFF
SET colsep '|'
SET LINES 5000
SET LINESIZE 5000
SET PAGES 0
SET PAGESIZE 5000
SET TRIMSPOOL ON
SELECT '1 -- Validating emp entries ' from dual;
SELECT 'SELECT emp_name,emp_no,manager
FROM emp;' FROM DUAL;
SELECT 'EXPECTED VALUE = 1 from emp' from dual;
SELECT 'Actual count from emp'||' = '||count(*)
FROM emp;
SELECT emp_name,emp_no,manager
FROM emp;
有人可以帮我打印输出,如下所述
1 -- Validating emp entries
SELECT *
FROM emp;
EXPECTED VALUE = 1 from emp
Actual count from emp = 1
EMP_NAME |EMP_NO |MANAGER
-------- ------ -------
Thomas Albert|12 |SAM
即使列宽更大,它也应符合列的最大值。
答案 0 :(得分:0)
如果你想让空格关闭,那么
EMP_NAME |EMP_NO |MANAGER
-------- ------ -------
Thomas Albert|12 |SAM
变为
EMP_NAME|EMP_NO|MANAGER
Thomas Albert|12|SAM
在SQL * Plus 12.2中,您可以set markup csv
,或者SQL Developer有类似的东西。
如果你不能使用它们,你将不得不编写自己的解析器。这是我的: http://www.williamrobertson.net/documents/refcursor-to-csv.shtml