帮助我的代码出错了它说:
BOF或EOF为True,或者当前记录已被删除,请求的操作需要当前记录。
我认为这个rs.close有问题或者我在哪里可以设置rs.close?因为我设置并使用了两次记录集。 谁有人可以帮忙?请修改我的代码。
Public Function borrowersName(ByVal Iname, ByVal Imod, ByVal Icat, ByRef BFname, ByRef BLname) As Boolean
Dim dateReturned As String
'select firt the primary key of the item
qry1 = "select tblitem_id from tblitem inner join tblcategory on tblitem.tblcategory_id=tblcategory.tblcategory_id where tblitem.item_name='" + Iname + "' and tblitem.item_model='" + Imod + "' and tblcategory.category_name='" + Icat + "'"
rs.Open qry1, conn
qry1Result = rs.Fields(0).Value
rs.Close
qry2 = "SELECT date_returned,Firstname,Lastname FROM tblborrowers where tblitem_id='" & qry1Result & "' ORDER BY tblborrowers_id DESC LIMIT 1"
rs.Open qry2, conn
dateReturned = rs.Fields(0).Value
If dateReturned <> "" Then
borrowersName = True
BFname = rs.Fields(1).Value
BLname = rs.Fields(2).Value
Else
borrowersName = False
End If
Set rs = Nothing
结束功能
答案 0 :(得分:0)
您确实拥有正确顺序的记录集Open
和Close
方法,因此没有问题。
错误“BOF或EOF为True,或者当前记录已被删除”只是意味着您的SELECT
个查询之一已返回零记录。你做了什么取决于你的要求。例如,您可以在尝试读取字段值之前测试Not rs.EOF
。