asp连接dbf数据库
一个客户要求在网站里做产品搜索,听起来挺简单的.但是产品信息不在网站数据库中,而是在公司的管理软件中,还是DBF的数据库,晕啊,竟然有这种要求.没办法,客户就是上帝.上帝的要求一定要满足.
在网上看了看连接dbf数据库的代码还真多,贴一段上来:
在网上看了看连接dbf数据库的代码还真多,贴一段上来:
1 set conntemp=server.createobject("adodb.connection")
2 conntemp.open "Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;"&"SourceDB=" & Server.MapPath("dbf") &";Exclusive=No"
3 set rstemp=conntemp.execute(inputquery)
2 conntemp.open "Driver={Microsoft Visual FoxPro Driver};SourceType=DBF;"&"SourceDB=" & Server.MapPath("dbf") &";Exclusive=No"
3 set rstemp=conntemp.execute(inputquery)
按习惯server.mappath("dbf")应该是数据库的文件名,可是我把它换了后,百般调试均告失败!.
后来发现在vb6中用data控件可以连接dbf数据库,而data.databasename只能设置为dbf数据库所在目录,不能设置为数据库名.于是把server.mappath("dbf")中的dbf换成我的数据库目录,哇!一切OK!
最后的代码:
1 <%
2
3 set conntemp=server.createobject("adodb.connection")
4
5 conntemp.open "Driver={Microsoft FoxPro VFP Driver (*.dbf)};SourceType=DBF;"&"SourceDB=" & Server.MapPath("data") &";Exclusive=No"
6
7 set rstemp=conntemp.execute("select * from han.dbf")
8
9 if not (rstemp.bof and rstemp.eof) then
10 do while not rstemp.eof
11 response.write rstemp("h_name")&"<BR>"
12 rstemp.movenext
13 loop
14 end if
15
16 %>
2
3 set conntemp=server.createobject("adodb.connection")
4
5 conntemp.open "Driver={Microsoft FoxPro VFP Driver (*.dbf)};SourceType=DBF;"&"SourceDB=" & Server.MapPath("data") &";Exclusive=No"
6
7 set rstemp=conntemp.execute("select * from han.dbf")
8
9 if not (rstemp.bof and rstemp.eof) then
10 do while not rstemp.eof
11 response.write rstemp("h_name")&"<BR>"
12 rstemp.movenext
13 loop
14 end if
15
16 %>