结果集:rsSTO,字段:crid,变量:bkMark
 ID         crid       **
46694 38686 16SEP330M
46723   0       16SEP330M问题:我想用 move方法 当检测到 crid = 0 时,将该记录 移到结果集的第一行,怎么做?
    我下面的代码 不报错,但是没效果,求指点...
..
If rsSTO.RecordCount > 1 Then
     rsSTO.MoveFirst
     bkMark = rsSTO.Book
     Do While Not rsSTO.EOF
           If rsSTO!crid = 0 Then
                 rsSTO.Move 1 ', bkMark
                 Exit Do
            End If
            rsSTO.MoveNext
      Loop
End If
rsSTO.Book = bkMark
..是不是要对 rs 的 设置,有什么特别的要求?VB ADO MOVE 

解决方案 »

  1.   

    msdn中有,仔细看看
    movefirst已经好用
      

  2.   

    If rsSTO.RecordCount > 1 Then
         rsSTO.MoveFirst
         bkMark = rsSTO.Book
         Do While Not rsSTO.EOF
               If rsSTO!crid = 0 Then
                     'rsSTO.Move 1 ', bkMark
                     rssto.movefirst
                     Exit Do
                End If
                rsSTO.MoveNext
          Loop
    End If
    rsSTO.Book = bkMark
      

  3.   

    不存在这样的方法。记录集的 Move 方法是指记录指针的跳转。记录在记录集中的位置,与记录形成的历史以及查询的排序方式有关。你可以用 Order By 子句将记录按 crid 排序。