小生新手,需要改一段程序,大致是这样的:
strSQL = "SELECT ta.m_id AS M_ID " & _
           "FROM   table_a  ta" & _
           "WHERE  ta.id = '" & v_ID & "' " & _
Set rstTmp = New ADODB.Recordset
rstTmp.Open strSQL, cnn, adOpenStatic, adLockReadOnly
With rstTmp
  If Not .EOF Then
    v_machine_num = IIf(IsNull(!M_ID), 0, !M_ID)
    Call MQ(v_machine_num)
  Else
    v_machine_num = 0
  End If
End With
rstTmp.Close
测试过这段代码,只能赋一个SQL结果给v_machine_num,调用一次MQ函数,而实际上符合条件的记录有好几条,求教各位高手要如何修改才能将所有的结果都调用一次MQ函数?谢谢!

解决方案 »

  1.   

        strSQL = "SELECT ta.m_id AS M_ID " & _
                 "  FROM table_a ta" & _
                 " WHERE ta.id = '" & v_ID & "' "
        
        Set rstTmp = New ADODB.Recordset
        rstTmp.Open strSQL, cnn, adOpenStatic, adLockReadOnly
        
        With rstTmp
            If .recordcount > 0 Then
                While Not .EOF
                    v_machine_num = IIf(IsNull(!M_ID), 0, !M_ID)
                    Call MQ(v_machine_num)
                    .movenext
                Wend
            Else
                v_machine_num = 0
            End If
        End With
        
        rstTmp.Close