这段代码为什么只改一条记录?

来源:百度知道 编辑:UC知道 时间:2024/09/28 14:45:13
daohname=trim(Request("daohname"))
daohnamenew=trim(Request("daohnamenew"))
set rsm=server.createobject("adodb.recordset")
sqlm="select * from dhmenu where suy='"&daohname&"'"
rsm.open sqlm,conn,1,3
For i=1 To rsm.RecordCount
rsm("suy")=daohnamenew
next
rsm.update
rsm.close
Set rsm=Nothing
set rsm=server.createobject("adodb.recordset")
sqlm="select * from dhmenu where suy='"&daohname&"'"
rsm.open sqlm,conn,1,1
For i=1 To rsm.RecordCount
conn.execute("update dhmenu set suy="&daohnamenew&"")
next
rsm.close
Set rsm=Nothing

这段代码为什么也不可以呢?

For i=1 To rsm.RecordCount
rsm("suy")=daohnamenew
rsm.update
next

这样就可以了。
每次修改必须update

欢迎访问我的论坛:)
http://www.chinesebloger.com
期待您的支持:)

而且改的是最后一条?
SQLSERVER 数据库是不支持群修改的。也就是说,不能一次修改很多条记录。
也就是说真正执行修改的是rsm.update ,
而这句又在循环外面。。所以当然只修改一句。