`
yanghuidang
  • 浏览: 950469 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

用Oracle的SQL*Plus工具创建HTML页面

阅读更多

OracleSQL*Plus工具创建HTML页面<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />

作者:Fenng

OracleSQL*Plus工具有一些比较有趣的选项,合理的使用,能够给我们意想不到的后果。其中有一个”-M”选项能够创建用来创建HTML报表,在实际应用中很有用处。我们先来看看SQL*PlusOracle 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中。

输出Dept.html有如下内容(空白处已经截去):

<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" /><shapetype id="_x0000_t75" stroked="f" filled="f" path="m@4@5l@4@11@9@11@9@5xe" o:preferrelative="t" o:spt="75" coordsize="21600,21600"><stroke joinstyle="miter"></stroke><formulas><f eqn="if lineDrawn pixelLineWidth 0"></f><f eqn="sum @0 1 0"></f><f eqn="sum 0 0 @1"></f><f eqn="prod @2 1 2"></f><f eqn="prod @3 21600 pixelWidth"></f><f eqn="prod @3 21600 pixelHeight"></f><f eqn="sum @0 0 1"></f><f eqn="prod @6 1 2"></f><f eqn="prod @7 21600 pixelWidth"></f><f eqn="sum @8 21600 0"></f><f eqn="prod @7 21600 pixelHeight"></f><f eqn="sum @10 21600 0"></f></formulas><path o:connecttype="rect" gradientshapeok="t" o:extrusionok="f"></path><lock aspectratio="t" v:ext="edit"></lock></shapetype><shape id="_x0000_i1025" style="WIDTH: 414.75pt; HEIGHT: 108.75pt" o:ole="" type="#_x0000_t75"><img o:title="" src="/Develop/ArticleImages/18/18661/CSDN_Dev_Image_2003-5-271102330.png"></shape>

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.htmlHTML页面,如下图所示:

<shape id="_x0000_i1026" style="WIDTH: 414.75pt; HEIGHT: 92.25pt" o:ole="" type="#_x0000_t75"><img o:title="" src="/Develop/ArticleImages/18/18661/CSDN_Dev_Image_2003-5-271102332.png"></shape>

附:HTML页面输出样例源文件内容

<html>

<head>

DEPT表格之内容

<meta name="generator" content="SQL*Plus 8.1.7">

</head>

<body>

<p>

<table border="1" width="90%">

<tr>

<th>

DEPTNO

</th>

<th>

DNAME

</th>

<th>

LOC

</th>

</tr>

<tr>

<td align="right">

10

</td>

<td>

ACCOUNTING

</td>

<td>

NEW YORK

</td>

</tr>

<tr>

<td align="right">

20

</td>

<td>

RESEARCH

</td>

<td>

DALLAS

</td>

</tr>

<tr>

<td align="right">

30

</td>

<td>

SALES

</td>

<td>

CHICAGO

</td>

</tr>

<tr>

<td align="right">

40

</td>

<td>

OPERATIONS

</td>

<td>

BOSTON

</td>

</tr>

</table>

<p>

</body>

</html>

分享到:
评论

相关推荐

    Oracle SQL*Plus Pocket Reference, 2nd Edition

    ### Oracle SQL*Plus 口袋...以上章节覆盖了《Oracle SQL*Plus Pocket Reference, 2nd Edition》的主要内容,为读者提供了丰富的SQL*Plus使用技巧和最佳实践,适合各种级别的Oracle数据库管理员和技术人员学习和参考。

    大型数据库技术-实验二 Oracle SQL PLUS环境与查询.doc

    实验主要涵盖了Oracle数据库系统中的SQL*PLUS工具的使用以及SQL查询语言的基本操作。SQL*PLUS是Oracle数据库管理系统的命令行界面,用于执行SQL语句和PL/SQL块。通过实验,学生能够熟悉Oracle的基本知识,掌握SQL*...

    SQL*Plus用户指南与参考

    《SQL*Plus用户指南与参考》是一本专为Oracle数据库管理员和开发人员设计的重要参考资料,它详尽地介绍了如何使用SQL*Plus这个强大的命令行工具。SQL*Plus是Oracle数据库系统的一部分,允许用户直接交互地执行SQL...

    oracle Sql*plus

    Sql*plus是一个最常用的工具,具有很强的功能,主要有: 1. 数据库的维护,如启动,关闭等,这一般在服务器上操作。 2. 执行sql语句执行pl/sql。 3. 执行sql脚本。 4. 数据的导出,报表。 5. 应用程序开发、测试sql/...

    SQL*Plus Getting Started Release 8.1.7 for Windows

    SQL*Plus 是 Oracle 公司的一款交互式查询工具,允许用户使用 SQL 语言来访问和管理 Oracle 数据库。下面是 SQL*Plus Getting Started Release 8.1.7 for Windows 的知识点总结: SQL*Plus 简介 SQL*Plus 是一个...

    实验二 Oracle SQL*PLUS环境与查询

    实验二 Oracle SQL*PLUS环境与查询

    sql_plus.rar_plus

    Oracle的sql*plus是与oracle进行交互的客户端工具。在sql*plus中,可以运行sql*plus命令与sql语句。 我们通常所说的DML、DDL、DCL语句都是sql语句,它们执行完后,都可以保存在一个被称为sql buffer的内存区域中,...

    SQL*Plus User’s Guide and Reference Release 9.2

    SQL*Plus 是 Oracle 公司开发的一款交互式查询工具,允许用户通过命令行方式与 Oracle 数据库进行交互。该工具提供了大量的功能,包括查询、报表生成、数据导入和导出等。 1. SQL*Plus 简介 SQL*Plus 是 Oracle ...

    关于oracle在SQL*PLUS窗口中执行的命令,在这里给大家分享一下

    以上内容详细介绍了如何使用SQL*Plus进行Oracle数据库的基本管理操作,包括创建表空间、创建用户、授予和撤销权限等。这些操作对于日常的数据库管理和开发非常重要。希望这些内容能够帮助大家更好地理解和掌握Oracle...

    SQL*Plus Getting Started Release 8.1.6 for Windows

    SQL*Plus 是 Oracle 公司开发的一款交互式查询工具,允许用户通过命令行方式与 Oracle 数据库进行交互。下面是 SQL*Plus 的一些重要特性和知识点: 1. SQL*Plus 的基本概念:SQL*Plus 是一个命令行工具,用于执行 ...

    oracle中 sql * plus界面set 命令详解

    在oracle的sql*plus界面,不像SQL Server中的可拖动界面大小比例。需要通过设置环境参数,使查询显示的数据格式呈现为报表形式,使界面更美观。这是本人学习oracle的笔记,现总结为word表格的形式,各个set命令的...

    SQL*Plus User’s Guide and Reference Release 8.1.7

    SQL*Plus 是 Oracle 公司的一款交互式查询工具,用于对 Oracle 数据库进行查询、修改和管理。本手册提供了 SQL*Plus 的使用指南和参考手册,涵盖了 SQL*Plus 的基本概念、命令、格式、选项、变量、报表生成、图形化...

    SQL*Plus Quick Reference Release 8.1.7

    SQL*Plus 是 Oracle corporation 开发的一款强大的数据库管理工具,本 Quick Reference 释义了 SQL*Plus 的命令语法和使用方法。下面我们将详细介绍 SQL*Plus 的命令语法、基本使用、数据库访问、查询结果格式化、...

    常用SQL*Plus语句:

    SQL*Plus是Oracle数据库的客户端工具,用于与Oracle数据库进行交互。SQL*Plus提供了多种功能,包括数据的定义、数据的控制、数据的查询等。 一、数据定义(DDL)语句: 1. CREATE语句:用于创建表、索引、视图、...

    SQL*PLUS资料

    【SQL*PLUS】是Oracle公司提供的一个用于交互式管理和查询数据库的工具,它允许用户通过SQL命令与数据库进行各种操作,包括数据查询、更新、插入和删除等。SQL*PLUS不仅支持SQL语言,还提供了特有的命令来控制输出...

    Oracle(四):和SQL*Plus命令来场邂逅

    目录写在开头一、SQL*Plus的运行环境二、SQL*Plus命令三、格式化查询结果四、缓冲区写在结尾 写在开头 在数据库系统中,使用两种方式执行命令,一种是通过图形化工具,另一种是直接使用各种命令。 图形化工具:直观...

    SQL*Plus User's Guide and Reference Release 11.2-430

    11. **与其他Oracle工具的集成**:简述如何将SQL*Plus与其他Oracle管理工具,如SQL Developer,集成使用。 12. **政府用户注意事项**:对于美国政府或为其代理的用户,书中指出该软件被视为“商业计算机软件”,并...

Global site tag (gtag.js) - Google Analytics