在用spool 导出数据的时候,如果直接导成excel, 那么在格式上比较路,比如一个字段占了2列,这个还是好的,有的占了办列,这个格式看上去还是很麻烦的,所以我们可以使用sqlplus 的markup 命令, 直接导出成网页形式的,这样在格式上要整齐很多。
关于sqlplus 和 spool,可以参考我的2篇blog:
Oracle sqlplus 常用命令总结
http://www.cndba.cn/Dave/article/1210
Linux 平台下 Spool导出数据并发送到邮箱
http://www.cndba.cn/Dave/article/1202
语法:
SET MARK[UP] HTML [ON | OFF] [HEAD text] [BODY text] [TABLE text] [ENTMAP {ON | OFF}] [SPOOL {ON | OFF}] [PRE[FORMAT] {ON | OFF}]
SET MARKUP指明SQL*Plus输出HTML编码格式,必须使用SET MARKUP HTML ON SPOOL ON和SQL*Plus SPOOL命令去创建一个spool文件,并且以HTML格式输出。
SET MARKUP习惯称作SQLPLUS -MARKUP命令。
使用SQLPLUS -MARKUP HTML ON或者SQLPLUS -MARKUP HTML ON SPOOL ON 产生标准的web页,SQL*Plus 自动生成完整的用和标签封装HTML网页。 当设定SPOOL OFF或者退出SQL*Plus是,spool文件中的HTML标签就闭合。
SQLPLUS -MARKUP和一些其他有用的静默和限制命令一起用。
使用MARKUP HTML ON生成HTML输出,无论是标签还是一个HTML表格。输出一个表格使用标准的HTML 用SHOW MARKUP命令查看MARKUP操作当前状态: SQL> show markup markup HTML OFF HEAD ",
和 标签,自动闭合从一个查询返回结果集的行和列。当设置HTML ON时,默认产生标准HTML表格。通过设置PREFORMAT ON产生预格式化HTML
标签。