一个将数据库里面的内容生成EXCEL的例子

发表于:2007-06-30来源:作者:点击数: 标签:
1、ASP文件: %@ LANGUAGE= VB SCRIPT % %option explicit% % ‘’EXAMPLE AS:把 数据库 中一个每天24小时在线人数放到一个EXCEL文件中去 ‘’AUTHOR:钢铁工人 ‘’EMAIL:hello_hhb@21cn.com ‘’DATE:2001-3-25 ‘’TEST:在NT4,SP6, SQL SERVER 7.0,
1、ASP文件:

<%@ LANGUAGE="VBSCRIPT" %>
<%option explicit%>
<%
‘’EXAMPLE AS:把数据库中一个每天24小时在线人数放到一个EXCEL文件中去
‘’AUTHOR    :钢铁工人
‘’EMAIL     :hello_hhb@21cn.com
‘’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‘’);
insert into populationperhour values(‘’49‘’,‘’8‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’88‘’,‘’9‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’215‘’,‘’10‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’370‘’,‘’11‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’550‘’,‘’12‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’629‘’,‘’13‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’756‘’,‘’14‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’833‘’,‘’15‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’923‘’,‘’16‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’980‘’,‘’17‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’957‘’,‘’18‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’812‘’,‘’19‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’952‘’,‘’20‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’1379‘’,‘’21‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’1516‘’,‘’22‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’1476‘’,‘’23‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’1291‘’,‘’24‘’,‘’2001-1-11‘’);
insert into populationperhour values(‘’1028‘’,‘’1‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’687‘’,‘’2‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’462‘’,‘’3‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’317‘’,‘’4‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’221‘’,‘’5‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’158‘’,‘’6‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’127‘’,‘’7‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’81‘’,‘’8‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’96‘’,‘’9‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’192‘’,‘’10‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’380‘’,‘’11‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’629‘’,‘’12‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’745‘’,‘’13‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’964‘’,‘’14‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’1012‘’,‘’15‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’1050‘’,‘’16‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’1135‘’,‘’17‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’1130‘’,‘’18‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’894‘’,‘’19‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’1026‘’,‘’20‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’1430‘’,‘’21‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’1777‘’,‘’22‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’1759‘’,‘’23‘’,‘’2001-1-12‘’);
insert into populationperhour values(‘’1697‘’,‘’24‘’,‘’2001-1-12‘’);

原文转自:http://www.ltesting.net