sqlplus中設定在螢幕中上不列印出輸出

kisslfcr發表於2017-11-08
在某些特定的情況下我們想在做某種實驗,需要執行一段sql語句,但是不想在螢幕上列印出sql語句的結果(太長了)
可以採用如下方式。
1    把想要執行的語句寫到一個sql指令碼中,例如:
[oracle@irac01 scripts]$ more sqlt.sql
set term off
alter session set sql_trace=true;
select * from v$latch;
alter session set sql_trace=false;
2    注意到了吧,指令碼的開頭進行了設定
set term off


關於set命令的解釋如下:

column
修改列寬度
     column c1 format a20      --將列c1(字元型)顯示最大寬度調整為20個字元
     column c1 format 9999999  --將列c1(num型)顯示最大寬度調整為7個字元
修改列標題
     column c1 heading c2       --將c1的列名輸出為c2

set colsep' '      --行的標題列的分隔符
set linesize(line) --設定sqlplus輸出的最大行寬
set pagesize       --設定頁面的最大行數 預設為 24,為了避免分頁,可設定為 0
set serveroutput on|off
set echo on  --顯示檔案中的每條命令及其執行結果,預設為 on
set echo off --不顯示檔案中的命令,只顯示其執行結果
set term on  --查詢結果既顯示於假離線檔案中(spool指定輸出的檔案),又在SQLPLUS中顯示
set term off --查詢結果僅僅顯示於假離線檔案中(spool指定輸出的檔案)
set heading off  --讓結果行的標題不顯示,預設為 on
set heading on   --讓結果行的標題顯示
set trimout on  --去除標準輸出每行的拖尾空格,預設為 off
set trimspool on --去除重定向( spool)輸出每行的拖尾空格,預設為 off
set timing off   --顯示每條sql命令的耗時,預設為off
set verify off   --是否顯示替代變數被替代前後的語句。
exit             --退出

set feedback
  有三種方式:預設為 on
            set feedback on;set feedback off;set feedback n
  預設的當一條sql發出的時候,oracle會給一個反饋,比如說建立表的時候,如果成功,命令列會返回類似:Table created的反饋,又比如執行一個pl/sql成功的時候,命令列會返回:PL/SQL procedure successfully completed 。當載指令碼中執行很多語句的時候,一般將feedback設為off。
  set feedback n:當一條sql語句返回n或者大於n行記錄的時候,就會有feedback,比如:set feedback 5,當返回記錄等於或多於5行的時候會有類似8 rows selected.的反饋.如果返回行少於5則沒有此反饋。

set define off
  在SQL*Plus中預設的"&"表示替代變數,也就是說,只要在命令中出現該符號,SQL*Plus就會要你輸入替代值。這就意味著你無法將一個含有該符號的字串輸入資料庫或賦給變數,如字串“SQL&Plus”系統會理解為以“SQL”打頭的字串,它會提示你輸入替代變數Plus的值,如果你輸入ABC,則最終字串轉化為“SQLABC”。
  set define off 則關閉該功能,“&”將作為普通字元,如上例,最終字元就為“SQL&Plus” 

  set define off --關閉替代變數功能
  set define on  --開啟替代變數功能
  set define $   (不是能是字母數字和空格)將替代預設變數標誌符&為“$”,即原來的&標誌符將以普通字元的形式插入,而$後面的字元為變數,將會提示你輸入。

SPOOL命令
  spool filename --將緩衝區的內容寫到指定的檔案filename
  spool off      --終止寫命令

MARKUP
  MARKUP是sql*Plus的一個環境設定,它控制輸出的標記語言型別。在預設情況下,MARKUP將HTML定義為標記語言,但是標籤自身是關閉的。HTML標籤集是預定義;你必須透過下面語句將標籤開啟:
  SET MARKUP HTML ON


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29135257/viewspace-2146981/,如需轉載,請註明出處,否則將追究法律責任。

相關文章