ADO .NET获取记录计数

时间:2015-08-06 06:16:20

标签: vb.net ado

我这样打开了MySQL的记录。

C:\Users\userName\AppData\Local\Temp
如果有记录的话,一切都运转良好。但是当没有记录时,它会给出错误" EOF或BOF不为真或记录为空"。我尝试做这样的事情,这样如果记录集为空,它将显示0.00。如果没有,它会显示金额。

    Connection1 = Server.CreateObject("ADODB.Connection")
    Connection1.Open(DB_CONNECTIONSTRING)

    RS1 = Server.CreateObject("ADODB.Recordset")

    strSQL1 = "SELECT ... =" & Request.QueryString("ID")

    RS1.Open(strSQL1, Connection1, adOpenForwardOnly, adLockReadOnly, adCmdText)

我该怎么办?感谢

2 个答案:

答案 0 :(得分:0)

您可以测试RecordSet的EOF属性,然后按照条件处理进行操作。

RecordSet Properties

可能的选择:

    amount = 0.0
    If Not RS1.EOF Then
        If RS1.RecordCount > 0 Then
            amount = RS1.fields("item1").value.ToString()
        End If
    End If

答案 1 :(得分:0)

使用Mort的回答Mort's answer RS1.recordcount="1"应该是RS1.RecordCount > 0。对象类型在这里是错误的。

可能的选项升级:

amount = 0.0
If Not RS1.EOF Then
    If RS1.RecordCount > 0 Then
        amount = RS1.fields("item1").Value.ToString()
    End If
End If