VB6-更新查询匹配的多行

问题描述 投票:0回答:1

此查询将用于更新与其匹配的多行...但是由于无法循环执行而无法执行,最终仅添加了第一行匹配的行。

rs.Open "SELECT tbl_club_member.Mid, tbl_club_member.BlockFlat, [tbl_block_flat.Size] FROM tbl_club_member INNER JOIN tbl_block_flat ON tbl_club_member.BlockFlat = tbl_block_flat.BlockFlat WHERE ((Mid(tbl_block_flat.BlockFlat,1,2) Like '" & Me.Text2 & "') And ((tbl_club_member.MemberType) like 'Owner'));", cn, adOpenForwardOnly, adLockReadOnly

MemberID = rs.Fields(0)
Charge = rs.Fields(2) * Me.Text1

    With rs
        .Fields(0) = NextID 'tid
        .Fields(1) = CurDt   'tdate
        .Fields(2) = 72 'accid
        .Fields(3) = MemberID 'memberid
        .Fields(8) = Charge 'amount
        .Fields(9) = Combo2.Text 'particular
        .Fields(10) = userx
        .Fields(11) = Now()
        .Update
    End With
       rs.MoveLast
        Exit Sub
vb6
1个回答
0
投票

这是RecordSet通常完成的操作:

Private Sub Test()
   Do While Not rs.EOF
      rs.Fields(0) = NextID 'tid
      rs.Fields(1) = CurDt   'tdate
      rs.Fields(2) = 72 'accid
      rs.Fields(3) = MemberID 'memberid
      rs.Fields(8) = Charge 'amount
      rs.Fields(9) = Combo2.text 'particular
      rs.Fields(10) = userx
      rs.Fields(11) = Now()
      rs.Update

      rs.MoveNext
   Loop
End Sub
© www.soinside.com 2019 - 2024. All rights reserved.