求救asp问题,总是报错:语法错误 (操作符丢失) 在查询表达式 'id=' 中。

来源:百度知道 编辑:UC知道 时间:2024/05/16 03:20:18
以下是我的代码:
set rst=server.createobject("adodb.recordset")
id=request.QueryString("uid")
if request.QueryString("act")="laws" then
rst.open "select * from news where id=" & id,conn,1,3
rst("title")=request.form("tit")
rst("detail")=request.form("det")
rst.update
rst.close
end if

总是报rst.open "select * from news where id=" & id,conn,1,3这一句错误:语法错误 (操作符丢失) 在查询表达式 'id=' 中。
我测试输出过接收过来的id值,是正常的.但又不知道哪里错了,哪位大侠帮帮忙,十分感谢~~~~~~
用二楼的方法提示:标准表达式中数据类型不匹配。

请继续帮助~~~~~谢谢,加把油就给分
也可以QQ联系:644518104

我不知道你和我前两天反的毛病一样不? 我的是在传参数时将接受的id弄错了
例如index.asp?id=<%=rs("uid")%> 中的第二页就该写成id=request.QueryString("id") 而不是id=request.QueryString("uid") 不知道你的问题是不是和我一样!!!

改为:
rst.open "select * from news where id='" & id&"'",conn,1,3

实际上,没有必要建一个recordset, 改成这样效率更高

id=request.QueryString("uid")
if request.QueryString("act")="laws" then
sqlstr="update news set title='"&request.form("tit")&"',detail='"&request.form("det")&"' where id='" & id&"'"
conn.execute (sqlstr)
end if

www

呵呵,像这种修改页面的写法,需注意以下几点便是:
1.传递页面的所传递的参数名
2.资料库中的资料类型是什麽
3.接收页面是否接收了参数,并写进SQL语句中.
4.注意释放资料所占用的空间set rst=nothing