要加
Do While Not rsSetting.EOF



Loop

解决方案 »

  1.   

    我想做的是删除符合条件记录,想使用批量删除
    这应该可以做到的吧?语法recordset.Delete AffectRecords参数AffectRecords   AffectEnum 值,确定 Delete 方法所影响的记录数目,该值可以是下列常量之一。常量 说明 
    AdAffectCurrent 默认。仅删除当前记录。 
    AdAffectGroup 删除满足当前 Filter 属性设置的记录。要使用该选项,必须将 Filter 属性设置为有效的预定义常量之一。 
    adAffectAll 删除所有记录。 
    adAffectAllChapters 删除所有子集记录。 
    AdAffectGroup指出只能是Filter为常量时候。
    那么我修改成这样:
       Dim rsSetting As New ADODB.Recordset
        
        rsSetting.Open "SETTING", gcnnSystem, adOpenDynamic, adLockBatchOptimistic    rsSetting.Delete adAffectAll
        rsSetting.UpdateBatch
        
        rsSetting.Close
        Set rsSetting = Nothing
    删除全部记录,还是有问题啊除了使用循环来删除记录以外,还有其他方法吗?
    SQL语句处理除外(因为要使用这个删除以后的RecordSet
    重新获取就麻烦了)
      

  2.   

    为什么不用其他的方法呢,一定要用这种方法,这种方法好痛苦哟
    你用这个方法,比你的方法直观多啦
    set rs=server.createobject("adodb.recordset")
    sql="delete * from 表名 where SVALUE='123'"
    rs.open sql,con,1,3
    set  rs=nothing
    就这样搞定
    con是数据库连接对象,不用我细说了吧
    这样比你用那个方法好看,也容易理解多啦
      

  3.   

    While Not rsSetting.EOF
      rsSetting.delete
      rsSetting.movenextwend
    即可
      

  4.   

    dim rs as new adodb.recordsetset rs=new adodb.recordsetrs.open "delete from table",conn,1,1set rs=nothing
      

  5.   

    do while not rs.eof
       ... ... 
    loop
    好象只能一条一条循环删
      

  6.   

    为什么不用其他的方法呢,一定要用这种方法,这种方法好痛苦哟
    你用这个方法,比你的方法直观多啦
    set rs=server.createobject("adodb.recordset")
    sql="delete * from 表名 where SVALUE='123'"
    rs.open sql,con,1,3
    set  rs=nothing
    就这样搞定
    con是数据库连接对象,不用我细说了吧
    这样比你用那个方法好看,也容易理解多啦
    很好啊,最好来个事务处理不就更好了吗?