以下的文章主要是對Oracle sqlplus格式化數據的相關實際應用的介紹,我們大家都知道spool 在實際的應用中是很好運用的,但是其在格式化的相關數據上 ,對與set命令是不大熟悉的,於是網上找了下,在此備注下:
- SQL>set colsep' ';
域輸出分隔符
- SQL>set newp none
設置查詢出來的數據分多少頁顯示,如果需要連續的數據,中間不要出現空行就把newp設置為none,這樣輸出的數據行都是連續的,中間沒有空行之類的
- SQL>set echo off;
顯示start啟動的腳本中的每個sql命令,缺省為on
- SQL> set echo on
設置運行命令是是否顯示語句
- SQL> set feedback on;
設置顯示“已選擇XX行”
- SQL>set feedback off;
回顯本次sql命令處理的記錄條數,缺省為on即去掉最後的 "已經選擇10000行"
- SQL>set heading off;
輸出域標題,缺省為on 設置為off就去掉了select結果的字段名,只顯示Oracle sqlplus格式化數據
- SQL>set pagesize 0;
輸出每頁行數,缺省為24,為了避免分頁,可設定為0。
- SQL>set linesize 80;
輸出一行字符個數,缺省為80
- SQL>set numwidth 12;
輸出number類型域長度,缺省為10
- SQL>set termout off;
顯示腳本中的命令的執行結果,缺省為on
- SQL>set trimout on;
去除標准輸出每行的拖尾空格,缺省為off
- SQL>set trimspool on;
去除重定向(spool)輸出每行的拖尾空格,缺省為off
- SQL>set serveroutput on;
設置允許顯示輸出類似dbms_output
- SQL> set timing on;
設置顯示“已用時間:XXXX”
- SQL> set autotrace on-;
設置允許對執行的sql進行分析
- set verify off
可以關閉和打開提示確認信息old 1和new 1的顯示.
Oracle 導出數據到文件:
sqlplus /nolog @d:\sp.sql
d:\sp.sql內容如下:
- set head off
- set headsep off
- set newp none
- set linesize 100
- set pagesize 10000
- set sqlblanklines OFF
- set trimspool ON
- set termout off
- set feedback off
- spool d:\export.txt
- select NODECODE||'&'||NODETYPE||'&'||NODENAME||'&' from "000".tbnode;
- spool off
- exit