vb用adodc.recordset.find查找记录时,找不到怎么处理? 找不到的时候,我想让它提示没有记录,并且返回?

vb用adodc.recordset.find查找记录时,找不到怎么处理? 找不到的时候,我想让它提示没有记录,并且返回?,第1张

Adodc1.Recordset.Find ("名称='" &mno &"'")

如果没有找到,此时,Adodc1.Recordset.EOF将为TRUE,此时只能前移MovePrevious或MoveFirst或MoveLast,不能再MoveNext,即只能move 一个负值,而不能move一个正值。如果再继续move p,将出错,已经到最后一条的后面了

执行以下代码可使Adodc1.Recordset.EOF为TRUE:

Adodc1.Recordset.MoveLast

Adodc1.Recordset.MoveNext

Private Sub Command9_Click()

Dim mno As String, p%

p = Adodc1.Recordset.AbsolutePosition

mno = InputBox("请输入名称", "查找窗")

Adodc1.Refresh

Adodc1.Recordset.Find ("名称='" &mno &"'")

If Trim(mno) = "" Then'应把此判断提到前面

Adodc1.Recordset.AbsolutePosition = p

Value = MsgBox("没有找到记录!", 0, "提示")

ElseIf Text1.Text = "" Then

Adodc1.Recordset.AbsolutePosition = p

Value = MsgBox("没有找到记录!", 0, "提示")

Me.Refresh

End If

可用Bookmark代替AbsolutePosition

End Sub

用数组记录,二次查询

sql 在course 表中查找到teacher_id=12345的所有记录

用循环把course_id添加到数组中,a()

然后再循环打开一个新的记录集,sql在score表中查找出course_id=a()的

我是这么做的,不知道还有没有高手提供其它方法


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6692387.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-26
下一篇 2023-03-26

发表评论

登录后才能评论

评论列表(0条)

保存