asp修改数据问题

来源:百度知道 编辑:UC知道 时间:2024/05/18 00:44:38
<%
set rs=server.createobject("adodb.recordset")
rs.open "select * from[ttt]",conn,1,3

rs("xm")=trim(request("xm"))

rs.update
rs.close
set rs=nothing
response.Redirect "../../1.asp"
%>
是不是这里有问题,为什么只可以修改ACCESS第一条xm这个字段的记录阿,下面还有N条记录都改不了。
我写的详细点吧

学号 姓名 年龄
xh xm nl
1 张一 10
2 张二 13
3 张三 10
.. .. ..
问题在这里,进入第2条把张二改成其他的名字,结果第一条记录的姓名改了,而第二条还是原来的。第3、4....都一样改去了第一条。
我要把它变成进入第2条记录,只能把第2条的记录改了,进入第3条也只能改第3条。

难道你想把每条记录的xm都修改为同一个吗?如果是的话,改成下面这样的:
<%
set rs=server.createobject("adodb.recordset")
rs.open "select * from[ttt]",conn,1,3
do while not rs.eof
rs("xm")=trim(request("xm"))
rs.update
rs.movenext
loop
rs.close
set rs=nothing
response.Redirect "../../1.asp"
%>

这些是循环把每行记录的xm都修改为传过来的值的代码。
--------------------------
那么你除了需要接收xm之外,还应该接收xh,把你的代码换成下面这些就可以了:

<%
dim xh
xh=trim(request("xh"))
set rs=server.createobject("adodb.recordset")
rs.open "select * from[ttt] where xh='"+xh+"'",conn,1,3
rs("xm")=trim(request("xm"))
rs.update
rs.close
set rs=nothing
response.Redirect "../../1.asp"
%>

这是以你自己的写法为基础的,确实过于麻烦,正确的应该是这样: