asp连接access数据库 错误类型:500
users.mdb中有一个student表,表有三个字段:id(自动编号);name;pwd
<%
Set conn=Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("users.mdb")
sql="select * from student"
set rs=conn.execute(sql)
response.write(rs("name"))
Response.Write "ok"
%>
iis配置是对的,因为<% Response.Write "ok" %>测试时是成功的
但是上述代码执行时,出错了,错误类型:500
到底错在哪里呢?
------解决方案--------------------数据库连接语句、NTFS下权限问题、文件引用与包含路径是否正确
------解决方案--------------------
楼主,如果你的网页没有显示具体错误行的话,
我提的三个问题,你分别先注释掉无关的语句,只测试到可能为错的句,行的话,再加下一行,
不行就先找这里的错误,比如
1,数据库连上了吗?
你只要放这两句就行了
<%
Set conn=Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("users.mdb")
%>
如果出错,就是数据库连不上,然后就找这里的错误,是连接字符串写错了,还是数据库文件不存在。
如果不出错,就增加到下一点,
2,连上了的话,有行吗?
<%
Set conn=Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("users.mdb")
sql="select * from student"
set rs=conn.execute(sql)
if rs.eof
response.write "没有行"
else
response.write "有行"
end
%>
3,有列name吗
<%
Set conn=Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)};DBQ=" & server.mappath("users.mdb")
sql="select * from student"
set rs=conn.execute(sql)
if rs.eof
response.write "没有行"
else
response.write "有行,name="+rs("name")
end
%>
这是最基本的调试技术,你学会以后就不用什么都上来问别人了,不然上来问等着别人回答,又麻烦,你自己也没有提高
------解决方案--------------------请检查一下目录的权限,要赋予USERS完全控制权限。
------解决方案--------------------ie - 菜单 - 工具 - internet选项 - 高级 去掉显示友好的http错误信息的勾
你看看具体错误时什么