日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 前端技术 > HTML >内容正文

HTML

使用SQLPLUS生成HTML报表

發布時間:2024/8/26 HTML 47 豆豆
生活随笔 收集整理的這篇文章主要介紹了 使用SQLPLUS生成HTML报表 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

我們可以在SQLPLUS中手工運行AWR,ASH的腳本生成HTML報表,下面來簡單講講怎么利用SQLPLUS來生成HTML報表

在SQLPLUS中有個命令(具體可以參考官方文檔SQLPLUS部分)

SET MARK[UP] HTML [ON |?OFF] [HEAD?text] [BODY?text] [TABLE?text] [ENTMAP {ON?| OFF}] [SPOOL {ON |?OFF}] [PRE[FORMAT] {ON |?OFF}]

一:首先在SQLPLUS中設置

set mark html on spool on??entmap off? pre off

這樣設置過后,利用spool 導出為html,SQLPLUS將會自動的為我們創建HTML格式,

注意:如果設置pre 為on,那么輸出的不是HTML格式,默認為off,

entmap 默認為on ,它會將>換成HTML中的&gt來顯示,所以我將其設置為off

二:為了格式化輸出,我們需要對輸出內容格式化

set echo off?????????????????????????這樣設置之后不會在HTML報表中顯示執行過的SQL語句

set feedback off??????????????????這樣設置過后不會在HTML報表中顯示已經處理多少行

set heading on???????????????????設置標題顯示

set?termout off????????????????????關閉在屏幕上的輸出,這樣可以加快spool執行速度

set linesize 200?????????????????設置行寬度為120

set pagesize 1000???????????? 設置一頁顯示1000行

set trimout off??????????????????? 去掉 每行后面多余的空格

三:利用spool 輸出為 *.html

spool c:/test.html

四:寫下要執行的SQL語句

五:spool off

例如要查詢表空間利用率,并將結果輸出為HTML報表格式:

將下面的語句保存為一個SQL腳本,然后在SQLPLUS中調用

SET MARKUP HTML ON SPOOL ON pre off entmap off
SET ECHO OFF
SET TERMOUT OFF
SET TRIMOUT OFF
set feedback off
set heading on
set linesize 200
set pagesize 10000
col tablespace_name format a15
col total_space format a10
col free_space format a10
col used_space format a10
col used_rate format 99.99
spool c:/test.html
select a.tablespace_name,a.total_space_Mb||'m' total_space,b.free_space_Mb||'m'

free_space,a.total_space_Mb-b.free_space_Mb||'m' used_space,
(1-(b.free_space_Mb/a.total_space_Mb))*100 used_rate,a.total_blocks,b.free_blocks from????????????????????
(select tablespace_name,sum(bytes)/1024/1024 total_space_Mb,sum(blocks) total_blocks from dba_data_files

group by tablespace_name) a,
(select tablespace_name, sum((bytes)/1024/1024) free_space_Mb,sum(blocks) free_blocks from dba_free_space

group by tablespace_name) b
where a.tablespace_name=b.tablespace_name order by used_rate desc;
spool off
SQL> @test;

報表的截圖

總結

以上是生活随笔為你收集整理的使用SQLPLUS生成HTML报表的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。