当前位置: 首页 > 图文教程 > 网络编程 > ASP > 将数据库里面的内容生成EXCEL

ASP
ASP中用Join和Array,可以加快字符连接速度。
采用ODBC接口访问MySQL指南
最大限度优化你的Asp性能
实现让每句话的头一个字母都大写
如何尽快释放掉Connection对象建立的连接?
把数据插入到数据库的两种方法
Connection对象的应用
查看ASP Session 变量的小工具
用XMLHTTP组件正确解析图片地址并将其保存
利用XMLHTTP 从其他页面获取数据
Request与Request.Form的速度测试
用SOAP和ASP进行服务器端更新
ASP开发网页时需要牢记的注意事项列表
面向对象的ASP技术:思考与实践
提供一种“间接防止另存为”的方法
格式化数字函数FormatNumber
怎么样写一段高效,安全的sql查询代码
关于Adodb.Stream的使用说明
不用EOF以加快记录循环
防止重复提交的巧妙方法

ASP 中的 将数据库里面的内容生成EXCEL


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 31 ::
收藏到网摘: n/a

  1、ASP文件:

<%@ LANGUAGE="VBSCRIPT" %>
<%option explicit%>
<%
'EXAMPLE AS:把数据库中一个每天24小时在线人数放到一个EXCEL文件中去
'AUTHOR    :钢铁工人
'EMAIL     :[email protected]
'DATE      :2001-3-25
'TEST      :在NT4,SP6,SQL SERVER 7.0,EXCEL2000中测试通过
%>
<HTML>
<HEAD>
<meta content="text/html; charset=gb2312" http-equiv="Content-Type">
<TITLE>生成EXCEL文件</TITLE>
</HEAD>
<body>
<a href="dbtoexcel.asp?act=make">生成在线人口的EXCEL</a>
<hr size=1 align=left width=300px>
<%
if Request("act") = "" then
else

  dim conn
  set conn=server.CreateObject("adodb.connection")
  conn.Open "test","sa",""
  'conn.Open Application("connstr")

  dim rs,sql,filename,fs,myfile,x,link
  
  Set fs = server.CreateObject("scripting.filesystemobject")
  '--假设你想让生成的EXCEL文件做如下的存放
  filename = "c:\online.xls"
  '--如果原来的EXCEL文件存在的话删除它
  if fs.FileExists(filename) then
    fs.DeleteFile(filename)
  end if
  '--创建EXCEL文件
  set myfile = fs.CreateTextFile(filename,true)


  
  Set rs = Server.CreateObject("ADODB.Recordset")
  '--从数据库中把你想放到EXCEL中的数据查出来
  sql = "select population,hourpos,datepos from populationperhour order by datepos,hourpos asc"
  rs.Open sql,conn
  if rs.EOF and rs.BOF then
  
  else
  
    dim strLine,responsestr
    strLine=""
      For each x in rs.fields
        strLine= strLine & x.name & chr(9)
      Next
    
      '--将表的列名先写入EXCEL
      myfile.writeline strLine

      Do while Not rs.EOF
      strLine=""
     
      for each x in rs.Fields
        strLine= strLine & x.value & chr(9)
      next
      '--将表的数据写入EXCEL
      myfile.writeline strLine

      rs.MoveNext
      loop
      
  end if

rs.Close
set rs = nothing
conn.close
set conn = nothing
set myfile = nothing
Set fs=Nothing

link="<A HREF=" & filename & ">Open The Excel File</a>"
Response.write link
end if
%>
</BODY>
</HTML>


2、数据库相关:

CREATE TABLE [populationperhour] (
    [population] [int] NOT NULL ,
    [hourpos] [int] NOT NULL ,
    [datepos] [datetime] NOT NULL
);
insert into populationperhour values('936','1','2001-1-11');
insert into populationperhour values('636','2','2001-1-11');
insert into populationperhour values('106','3','2001-1-11');
insert into populationperhour values('177','4','2001-1-11');
insert into populationperhour values('140','5','2001-1-11');
insert into populationperhour values('114','6','2001-1-11');
insert into populationperhour values('94','7','2001-1-11');
inse