我在 Visual Basic 6 上有下一个代码:
Static cmd As ADODB.Command
Static rs As ADODB.Recordset
If cmd Is Nothing Then
Set rs = New ADODB.Recordset
rs.ActiveConnection = conn
Set cmd = New ADODB.Command
cmd .ActiveConnection = conn
cmd .CommandText = mySqlCommand
cmd .Prepared = True
AddParam cmd, "MyParam", myParam
End IF
SetParam cmd, "MyParam", myParam
rs.Open cmd, , adOpenForwardOnly, adLockReadOnly
While Not rs.EOF
'Some code...
'...
rs.MoveNext
Wend
rs.Close
我完全确定我的命令有结果行。我尝试记录 sql 命令,然后将其复制粘贴到 sqltalk 中,它完全符合我的预期——它有一行。
但在我的 VB 中,我有 EOF 和 BOF 总是 = True。
为什么?以及如何解决这个问题?