您的位置:首页 > 数据库

使用SQL*PLUS构建完美excel或html输出

2010-04-16 16:42 579 查看
转自:http://hong9270503.blog.163.com/blog/static/127292320091611319516/

通过SQL*PLUS我们可以构建友好的输出,满足多样化用户需求。

  
本例通过简单示例,介绍通过sql*plus输出xls,html两种格式文件.

   首先创建两个脚本:

  
1.main.sql

   用以设置环境,调用具体功能脚本

   2.功能脚本-get_tables.sql

  
为实现具体功能之脚本

   通过这样两个脚本可以避免spool中的冗余信息.

   示例如下:

  
1.main.sql脚本:

[oracle@jumper utl_file]$ more main.sql

set
linesize 200

set term off verify off feedback off pagesize 999

set
markup html on entmap ON spool on preformat off

spool tables.xls

@get_tables.sql

spool
off

exit

   2.get_tables.sql脚本:

[oracle@jumper
utl_file]$ more get_tables.sql

select
owner,table_name,tablespace_name,blocks,last_analyzed

from all_tables
order by 1,2;

   3.执行并获得输出:

[oracle@jumper utl_file]$
sqlplus "/ as sysdba" @main

SQL*Plus: Release 9.2.0.4.0 -
Production on Mon Apr 25 10:30:11 2005

Copyright (c) 1982, 2002,
Oracle Corporation. All rights reserved.

Connected to:

Oracle9i
Enterprise Edition Release 9.2.0.4.0 - Production

With the
Partitioning option

JServer Release 9.2.0.4.0 - Production

Disconnected
from Oracle9i Enterprise Edition Release 9.2.0.4.0 - Production

With
the Partitioning option

JServer Release 9.2.0.4.0 - Production

[oracle@jumper
utl_file]$ ls -l tables.xls

-rw-r--r-- 1 oracle dba 69539 Apr 25
10:30 tables.xls

[oracle@jumper utl_file]$

  此处输出为xls文件,通过下图我
们可以看到输出效果:



  把main.sql脚本中的,spool tables.xls更改为spool
tables.htm,我们可以获得htm格式输出,效果如下图:

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: