为什么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中输入什么姓名,指针总是指向表中已有的那条记录,哪位大神知道是什么原因? 展开
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中输入什么姓名,指针总是指向表中已有的那条记录,哪位大神知道是什么原因? 展开
2个回答
展开全部
Adodc1.Refresh
把Adodc1.Recordset.EOF改成Adodc1.Recordset.RecordCount=0就可以了
改完后就表示你查找的数据为空,也就是没有符合条件的记录,就执行then后面的语名。
把Adodc1.Recordset.EOF改成Adodc1.Recordset.RecordCount=0就可以了
改完后就表示你查找的数据为空,也就是没有符合条件的记录,就执行then后面的语名。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询