使用
SET PAGESIZE 0
命令,以避免空行。這也抑制了列標題,這樣可以去除
SET HEADING OFF
命令
SPOOL on
,因爲它開始在一個名爲on.lst
文件後臺沒有意義。所以也刪除這個命令。
如果你想顯示與列名的標題 你可以試試下面的設置
set HEADING ON
SET FEEDBACK OFF
set WRAP OFF
set COLSEP ,
SET LINESIZE 32767
set NEWPAGE none
set UNDERLINE OFF
set TRIMSPOOL ON
set TRIMOUT ON
set PAGESIZE 50000
'heading on'是默認的,所以你必須對它進行設置。它允許在選擇開始時顯示列名。 underline off
抑制列名與選擇數據之間的'---'行。 pages 50000
將pagesize設置爲其最大值(Oracle 11.2)。 linesize 32767
將linesize設置爲其最大值(Oracle 11.2)。 newpage none
有必要在頁面開始時抑制這條空行,這是您發佈主要關注的內容。 所有這些都可以在SQL*Plus Command Reference
termout off
參數中僅抑制由@或@@命令執行的腳本創建的輸出。它不會被在SQL * plus控制檯中輸入的命令所抑制。如果使用
sqlplus user/[email protected] <<!
...
!
您使用模擬交互式輸入的shell語言的here-document語法。所以把你的sql命令放在一個腳本中,例如script.sql
,並執行
sqlplus user/[email protected] @script.sql
然後termout off
將抑制端子輸出。
而不是
colsep ,
select username,userid
...
返回類似
user1 , 14
nextuser , 236
myuser , 11
...
可以用離開COLSEP不變,執行
select username||','||userid
...
得到以下輸出
user1,14
nextuser,236
myuser,11
...
這也許是有用 https://dba.stackexchange.com/a/64620/2047
其工作只是真棒。你可以觀察到的另外一件事情我已經使用了一個單獨的查詢來創建標題有什麼方法可以消除它,並從給出結果的同一選擇查詢中獲取標題。 – DnA
還有一件事,即使在使用SET TERMOUT OFF之後,在終端上得到輸出 – DnA
@AmolSolanke編輯這篇文章並添加了對您的問題的回答 – miracle173