我要疯了!

aomin1981 2005-06-01 08:35:01
<%
classid=Request.QueryString("classid")
%>
<%
Set conn = Server.CreateObject("ADODB.Connection")
conn.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & Server.MapPath("01jlzd.mdb")
Set rs2 = Server.CreateObject("ADODB.Recordset")
sql2 ="Select * From jlzd where ks="&classid
rs2.open sql2,Conn,1,1
do while not rs2.eof
%>
<a href='disp.asp?id=<%=rs2("id")%>' target="_blank"><%=rs2("名称")%></a>
<%
RS2.MoveNext
Loop
rs2.close
%>


总是提示:
Microsoft OLE DB Provider for ODBC Drivers 错误 '80040e21'

ODBC 驱动程序不支持所需的属性。

/class.asp,行 16
...全文
274 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
TSD 2005-06-01
  • 打赏
  • 举报
回复
classid这个变量是否正确?和字段的类型是否正确
carbonic 2005-06-01
  • 打赏
  • 举报
回复
看看数据源那里的配置是否正确,还有你的权限是否达到要求,不过这个可能性比较小。
up1002 2005-06-01
  • 打赏
  • 举报
回复
classid=Request.QueryString("classid")
如果QueryString中没有传classid参数的话,你的SQL语句将变成:

Select * From jlzd where ks=

这就会出现 ODBC驱动程序不支持所需的属性 的错误了。

如果你的classid是字符型的,可以按照楼上 jekexys2004(浪傲) 的方法,
如果是数字型的,可以把 classid=Request.QueryString("classid") 这句改为:

if isnumeric(Request.QueryString("classid")) then
classid=CInt(Request.QueryString("classid"))
else
classid=0
end if

如果你的 Request.QueryString("classid") 有可能非常大,大于32768的话,
应该把上面一段中的CInt()改为CLng()
lenmore 2005-06-01
  • 打赏
  • 举报
回复
rs2.open sql2,Conn,1,1
改成
rs2.open sql2,Conn,3,1

试试……
jekexys2004 2005-06-01
  • 打赏
  • 举报
回复
你sql语句应该这样写:
sql2 ="Select * From jlzd where ks='"& classid &"'"
coolwindkaka 2005-06-01
  • 打赏
  • 举报
回复
我以前也碰到过,拿到其他的机器上测试就没问题了,你试下到其他机器测试一下看
NewJacket 2005-06-01
  • 打赏
  • 举报
回复
也许重起服务器就好了?
mynamelj 2005-06-01
  • 打赏
  • 举报
回复
如果你要用ODBC驱动的话,要设置数据源才行,否则换成:OLEDB
set conn=Server.CreateObject("ADODB.Connection")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath("01jlzd.mdb")
mymyal123 2005-06-01
  • 打赏
  • 举报
回复
Microsoft.Jet.OLEDB.4.0
baikaishui_0825 2005-06-01
  • 打赏
  • 举报
回复
set conn=Server.CreateObject("ADODB.Connection")
conn.open "Provider=Microsoft.Jet.OLEDB.4.0;Data Source="&server.mappath("01jlzd.mdb")
cncca 2005-06-01
  • 打赏
  • 举报
回复
数据连接换成下面的试:
dim conn
dim connstr
dim db
db="data.mdb"
Set conn = Server.CreateObject("ADODB.Connection")
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(""&db&"")
conn.Open connstr

28,406

社区成员

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

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