HttpContext curContext = System.Web.HttpContext.Current;
System.IO.StringWriter strWriter = new StringWriter();
System.Web.UI.HtmlTextWriter htmlWriter = new HtmlTextWriter(strWriter);
curContext.Response.ContentType = "application/vnd.ms-excel";
curContext.Response.ContentEncoding = Encoding.GetEncoding("GB2312");
curContext.Response.Charset = "GB2312";
GridView GV = new GridView(); GV.DataSource = Students;
GV.AllowPaging = false; //一个无分页的GridView
GV.DataBind();
GV.RenderControl(htmlWriter);
curContext.Response.Write(strWriter.ToString());
本例通过简单示例,介绍通过sql*plus输出xls,html两种格式文件.
首先创建两个脚本:
1.main.sql
用以设置环境,调用具体功能脚本
2.功能脚本-get_tables.sql
为实现具体功能之脚本
通过这样两个脚本可以避免spool中的冗余信息,参考:
如何去除SQLPLUS中SPOOL的冗余信息
示例如下:
1.main.sql脚本:
2.get_tables.sql脚本:
3.执行并获得输出:
此处输出为xls文件,通过下图我们可以看到输出效果:
System.IO.StringWriter strWriter = new StringWriter();
System.Web.UI.HtmlTextWriter htmlWriter = new HtmlTextWriter(strWriter);
curContext.Response.ContentType = "application/vnd.ms-excel";
curContext.Response.ContentEncoding = Encoding.GetEncoding("GB2312");
curContext.Response.Charset = "GB2312";
GridView GV = new GridView(); GV.DataSource = Students;
GV.AllowPaging = false; //一个无分页的GridView
GV.DataBind();
GV.RenderControl(htmlWriter);
curContext.Response.Write(strWriter.ToString());
curContext.Response.End();
------------------------------------------------------
相关Mark:
来源: http://www.eygle.com/archives/2005/04/eoasqlplusieaae.html
使用SQL*PLUS,构建完美excel或html输出
作者:
eygle |
English Version
【转载时请以超链接形式标明文章
出处和作者信息及
本声明】
链接: http://www.eygle.com/archives/2005/04/eoasqlplusieaae.html
通过SQL*PLUS我们可以构建友好的输出,满足多样化用户需求。
链接: http://www.eygle.com/archives/2005/04/eoasqlplusieaae.html
本例通过简单示例,介绍通过sql*plus输出xls,html两种格式文件.
首先创建两个脚本:
1.main.sql
用以设置环境,调用具体功能脚本
2.功能脚本-get_tables.sql
为实现具体功能之脚本
通过这样两个脚本可以避免spool中的冗余信息,参考:
如何去除SQLPLUS中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 preformat 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文件,通过下图我们可以看到输出效果:
把main.sql脚本中的,spool tables.xls更改为spool tables.htm,我们可以获得htm格式输出,效果如下图:

