`

使用SQL*PLUS,构建完美excel或html输出(转)

 
阅读更多

通过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 PR eformat 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文件,通过下图我们可以看到输出效果:
使用SQL*PLUS构建完美excel或html输出   把main.sql脚本中的,spool tables.xls更改为spool tables.htm,我们可以获得htm格式输出,效果如下图:使用SQL*PLUS构建完美excel或html输出

 

 

#main ... 后辍名.xls即excel,后辍名.html即html文件

#生成HTML报表样式:http://download.oracle.com/docs/cd/B14117_01/server.101/b12170/ch8.htm#i1043351

#set markup HTML [ON|OFF] 指定是否生成HTML格式,ON生成,OFF不生成,默认是OFF。

#用SHOW MARKUP命令查看MARKUP操作当前状态:

#HEAD text 指定HTML中HEAD标签中的内容,默认情况下,文本包括级联样式和标题。
#
#BODY text 指定HTML中BODY标签属性
#
#TABLE text
#设置<TABLE>标签的属性,如BORDER, CELLPADDING, CELLSPACING和WIDTH.。默认情况下,<TABLE> 的WIDTH属性设置为90%,BORDER属性设置为1。
#
#ENTMAP {ON|OFF}
#指定在SQL * Plus中是否用HTML字符实体如&lt;, &gt;, &quot; and &amp;等替换特殊字符<, >, " and & 。默认设置是ON。
#
#SPOOL {ON|OFF}
#指定是否在SQL*Plus生成HTML标签<HTML> 和<BODY>, </BODY> 和</HTML>。默认是OFF。
#注:这是一个后台打印操作,只有在生成SPOOL文件生效,在屏幕上并不生效。
#
#PRE[FORMAT] {ON|OFF}
#指定SQL*Plus生成HTML时输出<PRE>标签还是HTML表格,默认是OFF,因此默认输出是写HTML表格。
#
#在生成HTML格式时要设置一些其他操作,列出如下:
#
#SET ECHO {ON|OFF}
#是否显示脚本中正在执行的SQL语句。
#
#SET FEED[BACK] {6|n|ON|OFF}
#是否显示当前sql语句查询或修改的行数。默认只有结果大于6行时才显示结果的行数。如果set feedback 1 ,则不管查询到多少行都返回。当为off 时,一律不显示查询的行数。
#
#SET NEWP[AGE] {1|n|NONE}
#设置页与页之间的分隔。
#当SET NEWPAGE 0 时,会在每页的开头有一个小的黑方框。
#当SET NEWPAGE n 时,会在页和页之间隔着n个空行。
#当SET NEWPAGE NONE 时,会在页和页之间没有任何间隔。
#
#SET NULL text
#显示时,用text值代替NULL值
#
#SET PAGES[IZE] {24|n}
#设置一页有多少行数,如果设为0,则所有的输出内容为一页并且不显示列标题
#
#SET WRA[P] {ON|OFF}
#当SQL语句的长度大于LINESIZE时,是否在显示时截取SQL语句,设置SET WRAP ON时,输出行的多于的字符会另起一行显示,否则,会将输出行的多于字符切除,不予显示。
#
#SET TERM[OUT] {ON|OFF}
#是否在屏幕上显示输出的内容,  主要用与SPOOL结合使用。设置SET TERMOUT OFF,输出的内容只保存在输出文件中,不会显示在屏幕上,提高了SPOOL输出速度。
#
#SET TRIMS[OUT] {ON|OFF}  将SPOOL输出中每行后面多余的空格去掉

分享到:
评论

相关推荐

    spring boot+mybatis plus+easy poi实现数据库导出成excel和excel导入到数据库.zip

    在本项目中,"spring boot+mybatis plus+easy poi实现数据库导出成excel和excel导入到数据库",开发者利用了Spring Boot、MyBatis Plus和EasyPoi库来实现了一个功能强大的数据交互系统,允许用户将数据库中的数据...

    plsql导入excle数据表

    2. **创建表**:使用SQL*Plus或其他PL/SQL工具执行CREATE TABLE语句来创建目标表。 3. **定义约束条件**:为提高数据完整性,可定义主键、外键、唯一性等约束。 ##### 第三步:编写PL/SQL导入脚本 1. **连接ODBC...

    Oracle经典常用技巧荟萃

    使用SQL*PLUS构建完美excel或html输出,这涉及到在Oracle数据库查询结果的导出上。管理员可以将查询结果通过SQL*PLUS导出到不同的格式,以便于报表的制作和数据分析。另一个常用技巧是启用AutoTrace查看SQL执行计划...

    文件上传下载模板-excel模板下载,按照模板内容可以插入到对应表

    - **写入Excel**:对于导出功能,可以使用`write(OutputStream, ExcelWriterListener)`,监听器处理写入数据。 3. **MyBatis-Plus**: - **CRUD操作**:MyBatis-Plus提供了基于注解的快速插入、更新、删除和查询...

    实现ORACLE与SQLSERVER数据库间的数据抽取与转换工具

    对于Oracle数据库,我们可以使用PL/SQL语句或者Oracle的SQL*Plus工具来实现。在SQL Server中,我们可以利用T-SQL语言进行数据检索。 接下来是数据转换,这个阶段的目标是将从源数据库抽取的数据转化为目标数据库...

    excel读取Oracle数据的方法

    5. **将数据写入Excel**:遍历记录集,将数据填充到Excel的工作表中: ``` With Worksheets("Sheet1") .Range("A1").CopyFromRecordset rs End With ``` 6. **关闭连接**:完成操作后,记得关闭连接和记录集:...

    MDB Viewer Plus V1.60┊免费的MDB文件浏览器和编辑器┊汉化绿色特别版

    5. **查询构建器**:对于需要执行复杂查询的用户,MDB Viewer Plus提供了查询构建器,帮助用户根据需要创建SQL语句,快速定位和筛选数据。 6. **安全功能**:虽然此工具主要用于查看和编辑,但它还支持对受密码保护...

    使用COM+访问Excel

    在IT领域,尤其是在数据处理和自动化任务中,利用COM+(Component Object Model Plus)来访问Microsoft Office应用程序,如Excel,是一种常见的技术手段。COM+是微软.NET Framework的一部分,它允许对象之间的交互,...

    spring boot+mybatis plus 在线答题系统

    本系统的实现依托于Spring Boot框架和MyBatis Plus扩展,结合Excel处理技术,构建了一个高效、灵活的在线答题环境。 **一、Spring Boot简介** Spring Boot是Spring框架的简化版本,旨在简化Spring应用的初始搭建...

    ssm+分页+导入导出excel文件

    在SSM框架中,可以使用PageHelper或Mybatis Plus等扩展库来实现分页,它们提供了便捷的API,简化了分页查询的编写。 5. **Excel文件导入导出**:在企业应用中,导入导出Excel文件是常见的数据交换需求。在SSM框架下...

    SQLPlus_delphi_delphi7_简单查询工具_

    标题中的"SQLPlus_delphi_delphi7_简单查询工具_"表明这是一个基于Delphi7开发的SQL查询工具,类似于Oracle的SQL*Plus。这个工具可能是为了方便程序员或数据库管理员在Windows环境中执行SQL语句,进行数据查询、分析...

    power query excel插件工具

    1. 数据源连接:Power Query支持多种数据源,包括Excel工作簿、文本/CSV文件、数据库(如SQL Server、Oracle)、Web、XML、JSON等。只需几步操作,即可将这些数据源的数据导入到Excel中。 2. 数据预处理:在查询...

    违反完整性约束的解决办法

    - 在SQL\*Plus或其他Oracle客户端工具中设置服务器输出以便查看结果,例如使用`SET SERVEROUTPUT ON`。 通过以上步骤,可以有效地识别并处理违反完整性约束的问题,从而确保数据库中数据的完整性和一致性。这个...

    Oracle客户端手动制作方法(for9i).rar

    1. **下载所需的组件**:访问Oracle官方网站或第三方资源,下载适用于你操作系统的Oracle Instant Client、SQL*Plus以及其他必要的组件。 2. **解压组件**:将下载的压缩包解压到一个合适的目录,如C:\Oracle\...

    instantclient_11_2

    2. **ODBC(Open Database Connectivity)**:Instantclient_11_2提供了对ODBC的支持,使得具备ODBC驱动程序的任何应用程序都能连接到Oracle数据库,如Microsoft Excel或Visual Basic等。 3. **JDBC(Java Database...

    Mybatis-Plus-Generator

    Mybatis-Plus-Generator是一个基于Mybatis-Plus框架的实用工具,主要用于简化数据库表的 CRUD...在实际开发过程中,结合Mybatis-Plus的其他特性,如动态SQL、乐观锁、全局配置等,能够构建出稳定、高效的后台系统。

    instantclient-basic/odbc/sdk/sqlplus-nt-11.2.zip

    2. **Instantclient-sdk-nt-11.2.0.4.0.zip**:SDK(Software Development Kit)提供了开发Oracle客户端应用程序所需的头文件和库,允许开发者使用C、C++或其他支持的语言构建与Oracle数据库交互的应用程序。...

    s-plus的详细介绍

    它的功能覆盖了数据分析和统计建模的各个方面,能够处理各种数据格式,如Excel、Access、Oracle、Sybase、SQL Server以及各种专业数据库。用户可以通过直观的界面轻松存取和分析数据,同时,S-PLUS与Microsoft ...

    基于Oracle Developer 2000的数据导出方法浅析.pdf

    另一种方法是利用Oracle的内置功能,如SQL*Plus或者使用Oracle的Export工具,先将数据导出到文本文件,然后再由Excel导入。这种方法相对更为稳定,不受DDE的限制,但可能需要额外的步骤来转换数据格式。 对于更复杂...

Global site tag (gtag.js) - Google Analytics