ITPub博客

首页 > 数据库 > Oracle > 用Oracle的SQL工具创建HTML页面

用Oracle的SQL工具创建HTML页面

原创 Oracle 作者:gugu99 时间:2007-11-30 14:54:28 0 删除 编辑
用Oracle的SQL工具创建HTML页面

原发于
http://www.csdn.net/Develop/read_article.asp?id=18661

在那里凑数的,

TIP系列文章之:
用Oracle的SQL*Plus工具创建HTML页面

作者:Fenng

Oracle的SQL*Plus工具有一些比较有趣的选项,合理的使用,能够给我们意想不到的后果。其中有一个”-M”选项能够创建用来创建HTML报表,在实际应用中很有用处。我们先来看看SQL*Plus(Oracle 8i)的一些选项:

C:>SQLPLUS -
用法: SQLPLUS [ [

”-M”选项指定在输出的时侯使用HTML标记来输出数据,用以代替普通的文本。

其中”-M”选项的语法如下:
[-M[ARKUP] "HTML [ON|OFF] [HEAD text] [BODY text]
[ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}]"

如果我们在实际应用中,要对公司的某个Table进行每个月的报表HTML化,用SQL*Plus的这个特性很容易做到。

举例如下:
我们准备对Scott模式下的DEPT表进行处理。DEPT表内容:

SQL> SELECT * FROM dept;

DEPTNO DNAME LOC
---------- -------------- -------------
10 ACCOUNTING NEW YORK
20 RESEARCH DALLAS
30 SALES CHICAGO
40 OPERATIONS BOSTON

在系统命令行下输出HTML文件:

将下面几行语句存到一个.sql脚本中(比如说q.sql):

SET ECHO OFF
SET FEEDBACK OFF
SELECT * FROM dept;
SET ECHO ON
SET FEEDBACK ON
exit

然后在命令行下调用如下命令:
C:> sqlplus -s -m "HTML ON HEAD DEPT表格之内容" Scott/tiger @c:q.sql>Dept.html

对这条命令简单的解释一下:其中”-s”表示silent模式,”-m”表示启用HTML Markup选项,”HEAD DEPT表格之内容”可以用来定制一个简单的标题。然后命令中跟的是数据库用户名字和密码,执行脚本,重定向到Dept.html中。
输出Dept.html有如下内容(空白处已经截去):



在SQL*Plus下输出文件
在SQL*Plus中可以用SET MARKUP命令来做到。
SET MARKUP
用法: SET MARKUP HTML [ON|OFF] [HEAD text] [BODY text]
[ENTMAP {ON|OFF}] [SPOOL {ON|OFF}] [PRE[FORMAT] {ON|OFF}]

把下面的内存存为一个.sql脚本(比如说C:q.sql):

SET ECHO OFF
SET FEEDBACK OFF
SET MARKUP HTML ON SPOOL ON
SPOOL c:Dept.html
SELECT * FROM dept;
SPOOL OFF
SET MARKUP HTML OFF
SET ECHO ON
SET FEEDBACK ON

在SQL*Plus中调用,即可创建内容在C:中创建了名为Dept.html的HTML页面,如下图所示:
[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10748419/viewspace-986904/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 我的Oracle之路
请登录后发表评论 登录
全部评论
  • 博文量
    3122
  • 访问量
    2226276