51Testing软件测试论坛
标题:
求助:BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除
[打印本页]
作者:
zhangkun90
时间:
2013-1-30 09:31
标题:
求助:BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除
事情是这样的:
如附件所示,我使用附件中的代码所示,在QTP中运行提示:BOF 或 EOF 中有一个是“真”,或者当前的记录已被删除,所需的操作要求一个当前的记录。
但是我拿该条SQL语句在 mysql 中可以正确的执行并可以查询出该条记录,奇怪的是 当我把
select * from user where u_name='xys10020' 中的 u_name值变成纯英文时(没有数字),
例如:select * from user where u_name='ceshi' 是,则运行QTP该段语句却可以正常的执行 并且执行成功
我想知道这是咋回事捏 求高手解答
作者:
xjwldlover
时间:
2013-1-30 11:16
我可以蒙一下吗?
我没看到你对查询结果有是否为空的判断,即rs.eof (或者rs.bof),假如你查询结果是空的,这时你取第一条就会报错啦
作者:
zhangkun90
时间:
2013-1-30 12:00
本帖最后由 zhangkun90 于 2013-1-30 12:08 编辑
哎呀 猜对了, 是这样的哈 我捣鼓了一上午 才知道是什么原因,首先 user这个表在mysql中一共有5页,哎 ,u_name=‘xys10020’这条数据在最后一页,而 u_name='ceshi'这条数据在第一页上 也就是说在QTP中执行查询尾页的语句时会报这样的错误。
之后呢加了一个 while not adoStr.EOF
msgbox(XXX)
adoStr.MoveNext
这条循环就好了
可是我还是不知道为啥会这样
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
这个哈 是数据库连错了 把数据库A中的数据 在数据库B中查了 这不错了么 我犯2了
作者:
xjwldlover
时间:
2013-1-30 14:48
回复
3#
zhangkun90
百度一下eof会不会就清楚了呢
欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/)
Powered by Discuz! X3.2