学习型 ASP/PHP/ASP.NET 主机 30元/年全能 ASP/PHP/ASP.NET 主机,支持月付专业 MSSQL 数据库空间,支持月付专业 MySQL 数据库空间,支持月付
发新话题
打印

循环update数据库,只能修改第一条,无错误提示.

循环update数据库,只能修改第一条,无错误提示.

这段代码是循环update数据库里的内容,可我发现每次只能改第一条记录.这段代码有什么问题吗,并没有出现错误提示.
    set conn=server.createobject("adodb.connection")
    set rs=server.createobject("adodb.recordset")
    constr="Provider=SQLOLEDB;Data Source=HZSQL01;Initial Catalog=HRDB;User ID=ReadWrite;Password=WriteRead"
    conn.open = constr
    rs.open "select * from Lease_equip where badge ='"&owner&"' and active=2",conn,1,1
    do while not rs.eof
        autoid = rs("autoid")
        active="select"&rs("autoid")
        comments = "test"&rs("autoid")
        active            = Cint(request.form(active))
        comments            = trim(request.form(comments))
        'response.write active
        set temprs=server.createobject("adodb.recordset")
        sql = "update Lease_equip set active = '"&active&"',comments= '" &comments & "',disabledate = '"&disabledate&"' where autoid ='" & AutoID &"'"        temprs.open sql,con,1,3
        'response.write sql
    
        temprs.close
        set temprs = nothing
        con.close
        set con = nothing
    
    rs.movenext
    Loop
    rs.close
    set rs = nothing
    conn.close
    set conn= nothing

TOP

输出一下SQL,看究竟执行了几次.另外即然只是UPDATE,为什么不直接用EXECUTE?

TOP

sql语句中 字符串要用'' 数字就不要用 这个有没有错啊

TOP

输出SQL语句,完全争取.但就只执行一条记录.

TOP

response.write sql的结果如下:可事实上数据库里只修改了第一条,为什么啊?
update Lease_equip set active = '3',comments= 'test13',disabledate = '2008-4-24 10:37:01' where autoid =13update Lease_equip set active = '3',comments= 'test14',disabledate = '2008-4-24 10:37:01' where autoid =14update Lease_equip set active = '3',comments= 'test16',disabledate = '2008-4-24 10:37:01' where autoid =16update Lease_equip set active = '3',comments= 'test17',disabledate = '2008-4-24 10:37:01' where autoid =17update Lease_equip set active = '3',comments= 'test18',disabledate = '2008-4-24 10:37:01' where autoid =18

TOP

代码重新敲了一遍就好了,诡异的事情.

TOP

set conn=server.createobject("adodb.connection")
    set rs=server.createobject("adodb.recordset")
    constr="Provider=SQLOLEDB;Data Source=HZSQL01;Initial Catalog=HRDB;User ID=ReadWrite;Password=WriteRead"
    conn.open = constr
    rs.open "select * from Lease_equip where badge ='"&owner&"' and active=2",conn,1,1
    do while not rs.eof
        autoid = rs("autoid")
        active="select"&rs("autoid")
        comments = "test"&rs("autoid")
        active            = Cint(request.form(active))
        comments            = trim(request.form(comments))

       conn.execute("update Lease_equip set active = '"&active&"',comments= '" &comments & "',disabledate = '"&disabledate&"' where autoid ='" & AutoID &"'")        
      
    rs.movenext
    Loop
    rs.close
    set rs = nothing
    conn.close
    set conn= nothing
随缘不变,不变随缘

TOP

set conn=server.createobject("adodb.connection")
    set rs=server.createobject("adodb.recordset")
    constr="Provider=SQLOLEDB;Data Source=HZSQL01;Initial Catalog=HRDB;User ID=ReadWrite;Password=WriteRead"
    conn.open = constr
    rs.open "select * from Lease_equip where badge ='"&owner&"' and active=2",conn,1,3
    do while not rs.eof
        autoid = rs("autoid")
        active="select"&rs("autoid")
        comments = "test"&rs("autoid")
        active            = Cint(request.form(active))
        comments            = trim(request.form(comments))
        rs("active")=active
        rs("comments")=comments
        rs("disabledate")=disabledate
        rs.Update
    rs.movenext
    Loop
    rs.close
    set rs = nothing
    conn.close
    set conn= nothing
用一个rs记录集就可以Update的
http://www.lxzhcn.net
版块版主招募中
网站论坛发帖无问题,欢迎发帖。

TOP

楼上说的是
随缘不变,不变随缘

TOP

我来凑热闹的,但我看:  conn.open = constr   这个不知道对不对,应该是:  conn.open constr   =这个也可以?
学建网站:http://www.lele1988.cn

TOP

发新话题