如何用ASP把SQL SERVER数据转换为EXECL文件
类别: ASP教程
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\');
<%@ 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\');
- 上一篇: 避免ASP的SQL的执行效率低
- 下一篇: ASP出错集成处理
-= 资 源 教 程 =-
文 章 搜 索