使用SQL*Plus工具创建HTML页面

Oracle SQL*Plus 工具创建 HTML 页面
 
作者: Fenng
 
Oracle SQL*Plus 工具有一些比较有趣的选项,合理的使用,能够给我们意想不到的后果。其中有一个 ”-M” 选项能够创建用来创建 HTML 报表,在实际应用中很有用处。我们先来看看 SQL*Plus Oracle 8i )的一些选项:
 
C:/>SQLPLUS -
用法 : SQLPLUS [ [<option>] [<logon>] [<start>] ]
其中 <option> ::= - | -? | [ [-M <o>] [-R <n>] [-S] ]
      < 登录 > ::= < 用户名 >[/< 口令 >][@<connect_string>] | / | /NOLOG
      < 启动 > : : = @< 文件名 >[.<ext>] [< 参数 > ...]
        "-" 显示使用语法
        "-?" 显示 SQL*Plus 版本标帜
        "-M <o>" 使用 HTML 标志选项 <o>
        "-R <n>" uses restricted mode <n>
        "-S" uses silent mode
”-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 中。
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 页面. 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值