为什么adodc1.recordset.eof总为false?

PrivateSubCommand12_Click()IfText2.Text<>""Then‘如果输入的教师姓名不为空Adodc1.CommandType=adCmdT... Private Sub Command12_Click()
If Text2.Text <> "" Then ‘如果输入的教师姓名不为空
Adodc1.CommandType = adCmdText ’命令类型
Adodc1.RecordSource = "select * from 职称评审打分 where 姓名 = '" & Trim(Text2.Text) & "'" ‘查询语句
If Adodc1.Recordset.EOF Then ’如果没有符合where语句查询条件的记录
Adodc1.Recordset.AddNew ‘添加一条新纪录
Adodc1.Recordset.Fields("姓名").Value = Text2.Text
Adodc1.Recordset.Fields("申报类型").Value = Combo2.Text
。。。。。

说明:表中有一条记录,当输入的姓名和表中不一致时,应该没有符合条件的记录,adodc1.recordset.eof应该为true,所以执行then后面的语句,但是每次执行时都是执行else后面的语句。
也就是说无论在text2中输入什么姓名,指针总是指向表中已有的那条记录,哪位大神知道是什么原因?
展开
 我来答
百度网友fc71e2e5d
2013-08-28
知道答主
回答量:2
采纳率:0%
帮助的人:2956
展开全部
Adodc1.Refresh
把Adodc1.Recordset.EOF改成Adodc1.Recordset.RecordCount=0就可以了

改完后就表示你查找的数据为空,也就是没有符合条件的记录,就执行then后面的语名。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
信心安J
2013-08-28 · TA获得超过402个赞
知道小有建树答主
回答量:787
采纳率:0%
帮助的人:725万
展开全部

请在第四行下增加一条语

Adodc1.RecordSource = "select * from 职称评审打分 where 姓名 = '" & Trim(Text2.Text) & "'"    '查询语句
Adodc1.Refresh
If Adodc1.Recordset.EOF Then       '如果没有符合where语句查询条件的记录
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式