WEB开发网
开发学院数据库Oracle Oracle中用Treemaps图形化表示数据库 阅读

Oracle中用Treemaps图形化表示数据库

 2007-05-12 12:26:03 来源:WEB开发网   
核心提示: 下面是我的视图定义,数据库版本为 Oracle 9.2.0.1.0,Oracle中用Treemaps图形化表示数据库(2),create or replace view treemap_data_viewasselectts.nametablespace_name, 0 free_byte

下面是我的视图定义,数据库版本为 Oracle 9.2.0.1.0。

create or replace view treemap_data_view
as
selectts.nametablespace_name,
    0 free_bytes,
    ts.blocksize * f.blocksused_bytes,
    ts.blocksize * f.blockstotal_bytes
 fromsys.file$ f, sys.ts$ ts
where f.spare1 is null
  andf.ts# = ts.ts#
union all
selectts.name,
    0,
    decode(hc.ktfbhccval,0,ts.blocksize * hc.ktfbhcsz,null),
    decode(hc.ktfbhccval,0,ts.blocksize * hc.ktfbhcsz,null)
 fromsys.ts$ ts, sys.x$ktfbhchc
wherehc.ktfbhctsn = ts.ts#
union all
selectts.name,
    f.length * ts.blocksize,
    0,
    f.length * ts.blocksize
fromsys.ts$ ts, sys.fet$ f
wherets.ts# = f.ts#
 andts.bitmapped = 0
union all
selectts.name,
    f.ktfbfeblks * ts.blocksize,
    0,
    f.ktfbfeblks * ts.blocksize
fromsys.ts$ ts, sys.x$ktfbfe f
wherets.ts# = f.ktfbfetsn
 andts.bitmapped <> 0 and ts.online$ in (1,4) and ts.contents$ = 0;
grant select on treemap_data_view to public;

剩下的工作就是用PHP 文件来产生图表。该文件接受宽度和长度参数来调整被约束的区域的大小。我为图像分配了一个颜色表,颜色0是背景色,颜色1是文本和边界颜色,颜色2-128是绿色和黄色之间的颜色,颜色129-256是黄色和红色之间的颜色。

函数gendate将数据从数据库装入到一个本地表中。函数ImageCenterString在矩形的中央画一些文本(表空间的名字)。

Tags:Oracle 中用 Treemaps

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接