错误:"BOF或EOF中有一个是真,或者当前的记录已被删除,所需的操作要求一个当前的记录"

friefnd006 2004-04-20 11:59:32
错误:"BOF或EOF中有一个是真,或者当前的记录已被删除,所需的操作要求一个当前的记录".这是怎么回事?

Form1->ADOQuery1->Close();
Form1->ADOQuery1->SQL->Clear();
Form1->ADOQuery1->SQL->Add("SELECT Sex FROM student
WHERE id = " + IntToStr(tmp->id) );
Form1->ADOQuery1->Open(); //在这出错
tmp->sex = Form1->ADOQuery1->FieldValues["Sex"];
...全文
89 13 打赏 收藏 转发到动态 举报
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
friefnd006 2004-04-20
  • 打赏
  • 举报
回复
那怎么办呀?
halibut 2004-04-20
  • 打赏
  • 举报
回复
BCB5是要打补丁的,你是没打吧!!!
zihan 2004-04-20
  • 打赏
  • 举报
回复
一楼的.如果人家的id是整形(一般都是),就肯定不能够要你那个单引号了.
zihan 2004-04-20
  • 打赏
  • 举报
回复
也就是你的数据集是空的,或者说查询出来没有你想要的结果.你应该判断一下是找到了你想要的东西然后再去取.
或者应该是你下面一句出错吧.
jackyanna 2004-04-20
  • 打赏
  • 举报
回复
Form1->ADOQuery1->Close();
Form1->ADOQuery1->SQL->Clear();
Form1->ADOQuery1->SQL->Add("SELECT Sex FROM student
WHERE id = '" + IntToStr(tmp->id) +"'");
Form1->ADOQuery1->Open(); //在这出错
tmp->sex = Form1->ADOQuery1->FieldByNames("Sex")->AsString;
jishiping 2004-04-20
  • 打赏
  • 举报
回复
“运行可识别不出来”是什么意思?注意你的BCB5的版本,是专业版还是企业版,下载的
BCB5的版本要一致。ADO补丁适用于BCB5的任何版本。需要先安装BCB5的补丁,然后再安装
ADO的补丁。
yqcxm 2004-04-20
  • 打赏
  • 举报
回复
我以前也碰到过,先打上BCBUpdate1补丁,在打上ADO补丁,Borland官方网站下去
h98458 2004-04-20
  • 打赏
  • 举报
回复
装一个BCB6就解决了,不然要打ADO补丁
下载有两个文件,先装企业版补丁,再装ADO补丁
friefnd006 2004-04-20
  • 打赏
  • 举报
回复
jishiping(JSP 季世平) ( ) ,你还在么?请回话,我一直再现等呢.....恳请help
friefnd006 2004-04-20
  • 打赏
  • 举报
回复
我已经下载了,运行可识别不出来
jishiping 2004-04-20
  • 打赏
  • 举报
回复
Borland网页 http://info.borland.com/devsupport/bcppbuilder/patches/ 下载
friefnd006 2004-04-20
  • 打赏
  • 举报
回复
可我运行不识别呀
jishiping 2004-04-20
  • 打赏
  • 举报
回复
楼主应该用的是BCB5,需要打2个补丁才行。一个是BCB5本身的补丁(先执行),一个是专门
针对ADO控件的补丁(后执行)。

1,178

社区成员

发帖
与我相关
我的任务
社区描述
C++ Builder 数据库及相关技术
社区管理员
  • 数据库及相关技术社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧