How can you test if a record set is empty?
Dim temp_rst1 As Recordset
Dim temp_rst2 As Recordset
Set temp_rst1 = db.OpenRecordset("SELECT * FROM ORDER_DATA WHERE SKUS_ORDERED = '" & curSKU1 & "'开发者_Python百科 AND [ORDER] = " & curOrder)
Set temp_rst2 = db.OpenRecordset("SELECT * FROM ORDER_DATA WHERE SKUS_ORDERED = '" & curSKU2 & "' AND [ORDER] = " & curOrder)
If IsNull(temp_rst1) Or IsNull(temp_rst2) Then MsgBox "null"
I'm opening up a couple of record sets based on a select statement. If there are no records, will IsNull return true?
I would check the "End of File" flag:
If temp_rst1.EOF Or temp_rst2.EOF Then MsgBox "null"
RecordCount is what you want to use.
If Not temp_rst1.RecordCount > 0 ...
If temp_rst1.BOF
and temp_rst1.EOF
then the recordset is empty. This will always be true for an empty recordset, linked or local.
A simple way is to write it:
Dim rs As Object
Set rs = Me.Recordset.Clone
If Me.Recordset.RecordCount = 0 then 'checks for number of records
msgbox "There is no records"
End if
If Not temp_rst1 Is Nothing Then ...
Here, I'm using MS Access 2016 and I check if the recordset field if not null using this:
If (RecordSt.Fields("field_name").Value) Then
' do what you want if there is returned data
Else
' do what you want if there isn't any data returned by the select
精彩评论