数据库连接竟如此之难,望高手指点迷津!

jlilo 2005-04-25 01:28:14
为什么,同样是数据库连接

"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=F:\wwwroot\lin\data\data.mdb"可以

"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="& Server.Mappath("data/data.mdb")就不可以呢?
出错消息如下:

[Microsoft][ODBC Microsoft Access Driver]'(未知的)'不是一个有效的路径。确定路径名称品学是否正确,以及是否连接到文件存放的服务器。

[Microsoft][ODBC 驱动程序管理器]驱动程序的SQLSetConnectAttr失败


_______________________________________________________________________________

"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="& Server.Mappath("/ata/data.mdb")也是不可以呢?

出错消息如下:

[Microsoft][ODBC Microsoft Access Driver]找不到文件'(未知的)'
[Microsoft][ODBC 驱动程序管理器]驱动程序的SQLSetConnectAttr失败

...全文
221 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
luciferous 2005-04-25
  • 打赏
  • 举报
回复
server.mappath好象不支持以“/”开头的路径的,就跟asp的include一样的吧
kjava2008 2005-04-25
  • 打赏
  • 举报
回复
谢谢 ,受益非浅呀,最近我也找数据库连接方面的问题,是比想想中的麻烦,连ACESS都这么烦,SQLSERVER不更麻烦,难呀
jackycxg 2005-04-25
  • 打赏
  • 举报
回复
晕了,,,,这种问题以后一定要多注意点

不注意的话你在这里问也很少有人能帮你解决,因为没有人能看到你机子里的目录,呵呵
fangpeng2003 2005-04-25
  • 打赏
  • 举报
回复
很明显是你路径的问题
king2410 2005-04-25
  • 打赏
  • 举报
回复
"data/data.mdb" 是指当前目录的data子目录
"../data/data.mdb" 是指和当前目录在同个父目录下的data目录
shnnui1 2005-04-25
  • 打赏
  • 举报
回复
同意楼上所说的
  • 打赏
  • 举报
回复
看看你的路径
zwf88 2005-04-25
  • 打赏
  • 举报
回复
就是啊,最简单的调试方法是
response.write str
response.end

没什么大 不了的
itzhiren 2005-04-25
  • 打赏
  • 举报
回复
你的路径写错了呗,有什么奇怪的,不信你看看
response.write Server.Mappath("data/data.mdb")
输出的是什么.
jlilo 2005-04-25
  • 打赏
  • 举报
回复
"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="& Server.Mappath("../data/data.mdb")这样才可以

真是奇怪。。。
jlilo 2005-04-25
  • 打赏
  • 举报
回复
感谢各路高手的发言。。。。

-------------------
忘记声明一点:
我重装系统之前,"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="& Server.Mappath("data/data.mdb")可以用。

重装系统就不行了。。。。所以,系统是有可能有什么问题的。

再者:
server.mappath应该是也支持以“/”开头的路径的,
就是从站点的根目录算起,数据库的路径就比较麻烦了。。。还要包括你的虚拟路径,所以这个不是主要的问题。


就跟asp的include是不一样的!

如果你的iis 没有启用父路径,<!--#include file="../conn.asp"-->象这句,就没有办法解释的。。。。

好吧这个,就这样结了吧。。。

这个跟系统有关系,跟数据库连接没有什么问题。
qiqunet 2005-04-25
  • 打赏
  • 举报
回复



呵,都试过啦,那么我还能说些什么呢?????

不如再试一下这个吧:

"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="& Server.Mappath("\ata\data.mdb")

当然,还有这个:


"DRIVER={Microsoft Access Driver (*.mdb)}; DBQ="& Server.Mappath("/data/data.mdb")


:)


或者用另一种方式:


Set conn = Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath("data/data.mdb")
conn.Open connstr










28,406

社区成员

发帖
与我相关
我的任务
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
  • ASP
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧