用ADO对Excel的数据查询

本文介绍了ASP对Excel的基本查询操作。首先说明了操作Excel在服务器端Office和分布式COM的配置注意事项,接着阐述可将.xsl文件看作数据库,sheet视为表,字段对应单元格。还给出利用ASP读取Excel数据(不建立DSN)的代码示例及运行结果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

ASPExcel的基本操作之查询数据

 

Execl97/2000/xpMS Office办公软件的成员之一。在企业级应用当中,我们往往需要对Execl进行操作,如读取Execl里面的数据、往Execl里插入数据等。

一、操作Execl要注意的事项:

1、  服务器端Office的配置

MS Windows2000+IIS为例,要在服务器端安装有MS Office的成员之一ExeclOffice的版本没有特殊要求。

2、  服务器端分布式COM的配置

执行“ DCOMCNFG”命令,选择“应用程序”页的“Microsoft Execl 应用程序”—>“属性”—>“安全性”—>三个选项都选“使用自定义访问权限”,添加“Everyone”权限。

二、首先,先将利用ASP读取Execl的数据(不建立DSN)

我们可以整个.xsl文件看作是一个数据库,sheet1sheet2等分别看成一个独立的表,把A1B1C1…N1看作表的字段。

--建立连接对象实例ExeclConn

Set ExeclConn=Server.CreateObject(“ADODB.Connection”)

--利用Open 方法打开数据库

StrConn="Driver={Microsoft Excel Driver (*.xls)};"&_

"DriverId=790; DBQ="& Server.MapPath("xls文件名")

conn.Open StrConn

--建立数据集对象Rs并查询数据

Set Rs = Server.CreateObject("ADODB.Recordset")

Sql="select * from [Sheet1$]"

rs.Open Sql,conn,2,2

具体例子:

1、建立一个表Sheet1(数据库名为Students

   StudentID

      语

      数

      物

      化

      地

 

 

   李雪青

83

84

76

95

66

 

2

   冯江

87

96

82

100

81

 

3

   吴小霞

76

43

37

60

82

 

4

   邹亚汇

80

77

63

71

63

 

5

   蔡海飞

89

63

92

86

67

 

2、查询并显示表Sheet1内容的代码

<%

Dim conn

Dim StrConn

Dim rs

Dim Sql

Set conn=Server.CreateObject("ADODB.Connection")

StrConn="Driver={Microsoft Excel Driver (*.xls)};"&_

"DriverId=790; DBQ="& Server.MapPath("Students.xls")

conn.Open StrConn

Set rs = Server.CreateObject("ADODB.Recordset")

Sql="select * from [Sheet1$]"

rs.Open Sql,conn,2,2

%>

<center>

<table border="1">

<tr>

<%

for i=0 to rs.Fields.Count-1

%>

  <td bgcolor="#0099FF"><%=rs(i).Name%></td>

<%

next

%>

</tr>

<%

do while Not rs.EOF

%>

<tr>

<%

for i=0 to rs.Fields.Count-1

%>

  <td><%=rs(i)%></td>

<%

next

%>

</tr>

<%

  rs.MoveNext

  Loop

  rs.close

  set rs=nothing

  StrConn.close

  set StrConn=nothing

%>

</table></center>

3、运行结果

【更新】:2015.10.30 1. 更新:很多用户反馈不需要下拉选择,本版本特意去掉后供大家下载使用。 2. 改进:对文件结构做了大调整,数据库目录更直观打开文件夹即可看到,JS/css/img文件原来放inc文件夹。 3. 改进: 你可以同时修改文件夹名称和数据库文件名,可实现路径难破解而达到防下载目的。 4. 对使用说明等做了大量修改。比如询条件设置建议等。 产品优势】: 这是个极为简单却非常通用、非常方便的成绩询系统,通用于几乎所有Excel单二维数据询。只需修改 询条件和顶部、底部文字(非常简单),即可用于几乎所有工资等询,成绩询,物业询,收电费询,录取询,证书询等场景哦。 1. 非常通用。无论你Excel/Wps二维表几列,列标题各是什么,直接支持。其他格式导出为csv或excel后同样支持。询结果几乎都由你Excel二维表控制,平时只需维护好你的Excel表,而操作Excel,几乎每台电脑都有软件可以打开编辑,几乎谁都会操作。 2. 使用简单。只需修改询条件和标题,然后把你平时输入的excel二维表进行:复制,粘贴,更名,上传,特别方便,发布一次成绩询,半分钟内可以解决。修改询条件等,记事本打开编辑几个字即可,自定义是否使用验证码。 3. 市场广泛。可以广泛用于一次性出来的改动很少的成绩询,录取询,证书询系统(每个学校,教育机构,事业单位考试等都可以用到),工资询系统(每个企业,学校,所有单位都可能用到),水电费询系统等(小区,物业公司,大学寝室等),录取,证书询系统。 4. 使用灵活:支持多次询,比如工资询往往多月询,那么你只需一个月放一个数据库,下拉的询选项自动获取(选项即文件名);且每次询除了设置的询条件列的标题得一致外,其他的都是自定义可以不一样(任意列数,任意列标题,任意行数);如果询条件不一致,将代码文件复制一份后用不同文件夹命名,然后修改询条件即可使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值