SQL*Plus 通常被認為是一種互動的報表產生器,它使 SQL 指令從 ORACLE 資料庫中獲取資料,使用 SQL*Plus 進行設定,就能產生有良好格式的報表。以下是與製作報表有關的 SQL*Plus 指令:
1.設定報表尺寸
1)設定每頁起始列印的位置-SET NEWPAGE
SET NEWPAGE<列數>
(2)設定每頁列數-SET PAGESIZE
SET PAGESIZE<列數>
(3)設定每列的最大字元數-SET LINESIZE
SET LINESIZE<字元數>
2.定標題表頭與標題表尾-TTITLE 和 BTITLE
TTITLE [<位置說明><標題>][OFF|ON]
BTITLE [<位置說明><標題>][OFF|ON]
其中 <位置說明> 可使用以下選項參數:
COL n使標題從目前列的左邊第n個位置開始顯示
SKIP n列印n個空列
LEFT標題靠左
RIGHT標題靠右
CENTER標題靠中
顯示標題設定。
TTITLE(同 show TTITLE)
BTITLE(同 show BTITLE)
取消標題顯示。
TTITLEOFF
BTITLEOFF
恢復標題顯示。
TTITLEON
BTITLEON
清除已經定義的標題。
TTITLE CLEAR
BTITLE CLEAR
設定標題名稱。
TTITLE ‘IBM SHOES CORP’
3.欄位顯示設定-COLUMN
(1)欄位標題-COLUMN……HEADING
COLUMN <欄位名>HEADING <欄位標題>
(2)欄位格式-COLUMN……FORMAT
COLUMN<欄位名>FORMAT<格式>
(3)顯示欄位的顯示設定-COLUMN
COLUMN [<欄位名>] [OFF|ON|CLEAR]
其中 <欄位> 為欲顯示的特定欄位,若不寫則內定為全部欄位; CLEAR 為清除設定。
恢復 SAL 欄位的顯示格式。
COLUMN SAL ON
清除所有欄位的顯示設定。
CLEAR COLUMNS
將員工的薪資(SAL) 的顯示格式設為 $99,999.00。
COLUMN SAL FORMAT $99,999.00
設定薪資(SAL) 的標題為 SALARY。
COLUMN SAL HEADING SALARY
4.BREAK 與 COMPUTE 指令
(1)分割某欄位資料-BEAKE ON
BREAK ON <break 欄位名>
(2)計算某欄位值-Compute <函數>
COMPUTE <函數>OF<欄位>ON<break 欄位名>
依部門代碼(deptno) 計算每部門的薪資總和(SUM)。
5.查詢的結果儲存或列印-SPOOL
使用者若是要將查詢的結果儲存到某檔案中或列印,則可在查詢前使用 SPOOL 指令:
SPOOL<檔案名>
若是欲將查詢的結果直接列印則可以用以下的指令:
SPOOLOUT
SPOOL 指令會一直儲存或列印直到使用者使用以下的指令:
SPOOLOFF
我們以下面的例 11 綜合以上的指令:
利用 SQL*Plus 產生固定格式的報表。
|