Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1148906
  • 博文数量: 231
  • 博客积分: 2500
  • 博客等级: 少校
  • 技术积分: 2662
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-03 16:35
个人简介

学无止境

文章分类

全部博文(231)

文章存档

2014年(7)

2013年(103)

2011年(11)

2010年(53)

2009年(57)

分类: Oracle

2014-04-17 15:07:55

oracle中可以使用sqlplus的set markup html ,生成html格式的报告,虽然一些css样式可以从awr报告的源代码中获得,但是一直想模拟awr报告那种隔行换色的效果一直没找到简易的方法来弄,尤其像我这种不会html编程的,今天才知道js可以放在body里,总算解决了一个我长久以来的困扰,以下是一个生产最近24小时awr报告index的html页面,有这个模板,基本上只要把sql语句往里扔就可以生成一个山寨awr样式的报告了。

set linesize 200
set term off verify off feedback off pagesize 999
rem set markup html on entmap ON spool on preformat off
set trims on;

COLUMN instname NEW_VALUE _instname NOPRINT
select instance_name instname from v$instance;
COLUMN indextime NEW_VALUE _indextime NOPRINT
select to_char(sysdate,'YYYY-MM-DD HH24:MI:SS') indextime from dual;
COLUMN rname NEW_VALUE _rname NOPRINT
select instance_name||'_awr_' rname from v$instance;

set heading on
set markup html on spool on preformat off entmap on -
head "Database Report -
  " -
body   "BGCOLOR='#0066CC'" -
table  "WIDTH='600px' BORDER='1' id='tab1'"

spool /check/awr/index.html
set markup html on entmap off

prompt

Report of &_instname. instance

the lastest report is generated at &_indextime. by liaody



select
snap_id,
'&_rname.'||to_char(end_interval_time,'yyyymmdd_hh24mi')||'.html ' report,
to_char(begin_interval_time,'YYYY-MM-DD HH24:MI') begin_time ,
to_char(end_interval_time,'YYYY-MM-DD HH24:MI') end_time
from
(
select * from dba_hist_snapshot
order by snap_id desc
)
where rownum<=24;


prompt End of Report

prompt
spool off
SET MARKUP HTML OFF
SET TERMOUT ON
prompt
EXIT;

阅读(5111) | 评论(0) | 转发(1) |
给主人留下些什么吧!~~