四、实例(存取Excel数据表)
为了更进一步说明这些函数的用法,本文给出一个存取Excel数据表的例子,其它函数的存取方法与此类似。假设有一个如图2的名为1.xls的Excel文件, 含有三个工作表一班、二班、三班。下面得用上面的函数存取工作表“一班”的数据。
图2
编写ASP文件(文件名为1.asp)存取此Excel中文件。
1.asp源代码
ASP文件 <%
' 建立Connection对象
Function CreateExcelRecordset(xlsfile,sheet)
Dim rs,conn,Driver,DBPath
Set conn = Server.CreateObject("ADODB.Connection")
Driver = "Driver={Microsoft Excel Driver (*.xls)};"
DBPath = "DBQ=" & Server.MapPath( "xlsfile" )
' 调用Open 方法连接数据库
conn.Open Driver & DBPath
set CreateExcelRecordset = Server.CreateObject("ADODB.Recordset")
' 打开Sheet表,参数二'>Connection对象
CreateExcelRecordset.Open "Select * From ["&sheet&"$]",conn, 2, 2
End Function
%>
<HTML>
<BODY bgcolor="#FFFFFF">
<TABLE BORDER=1>
<TR BGCOLOR=#00FFFF>
<%
'本行是关键行,对函数的引用
' set rs=CreateExcelRecordset("1.xls","一班")
Part I输出“表头名称”且表头的背景的颜色为#00FFFF
' For i=0 to rs.Fields.Count-1
Response.Write "<TD>" & rs(i).Name & "</TD>"
Next
%>
</TR>
<%
' Part '>输出数据表的“内容”
rs.MoveFirst ' 将目前的数据记录移到第一项
While Not rs.EOF ' 判断是否过了最后一项
Row = "<TR>"
For i=0 to rs.Fields.Count-1
Row = Row & "<TD>" & rs(i) & "</TD>"
Next
Response.Write Row & "</TR>"
rs.MoveNext ' 移到下一项
Wend
%>
</TABLE></CENTER>
</BODY>
</HTML>
利用IE和PWS(Personal Web Server)后浏览结果如图3:
图3
参考文献:
[1]DataBase and the World Wide Web Marianne Winslett, University of Illinois
[2]http://www.aspobjects.com
相关文章:
|