千金方孙思邈txt下载:asp简单问题(急)(急)(急)(急)(急)(急)

来源:百度文库 编辑:高考问答 时间:2024/05/11 03:21:15
<%
set rs=server.createobject("ADODB.recordset")
rs.Open "SELECT * FROM chanpin",conn,1,3
rs("xgcp")=0
rs.update
rs.close
set rs=nothing
response.write"this ok!"
%>
为什么这样写,只更新第一条数据啊?是哪里错了?现在只有第一条数据的xgcp更新成0。
我也试过
...
SELECT * FROM chanpin where id>0",conn,1,3
....
也是不行。。。急

要用循环的~你不循环,当然只更新第一条数据啊~

set rs=server.createobject("ADODB.recordset")
rs.Open "SELECT * FROM chanpin",conn,1,3
do while rs.eof
rs("xgcp")=0
rs.update
loop
rs.close
set rs=nothing
response.write"this ok!"

试试看~

[OP红发杰克]的答案是错误的,会死循环

应该在loop上面增加rs.MoveNext

但是这个会把表中的所有xgcp字段修改为0,如果你要把id为1的纪录的xgcp字段修改为0,那么就要这么写SQL语句

select * from chanpin where id=1

当然,通常情况这个1都是变量

sql="update chanpin set xgcp=0"
conn.execute(sql)