老板给小弟提的要求是form上半部是输入区,下半部是一个DBGrid。
在form显示的时候用DBGrid显示一个表,添加记录之后刷新显示这个DBGrid。我的显示代码是这样的(用TADOQuery、TDataSource实现):
qry.Close;
qry.SQL.Clear;
qry.SQL.Add('select * from mytable');
qry.Open;
这样解决的话,当这个表为空的时候,第一次刷新显示之后,那么显然EOF和BOF将会都为真。也就是说,我添加第一条记录之后,要进行第二次刷新显示的时候,记录成功添加,但是在刷新显示的时候会得到EOF和BOF有一个为真的错误提示。
请问如何解决??
小弟是第一次接触数据库开发,而且老板催得很紧,还请各位大虾指点迷津,小弟感激不尽!!!!!!!!!

解决方案 »

  1.   

    如果用的是DELPHI5 那感紧打ADO补丁,就好了
      

  2.   

    打如下补丁:
    ado的两个补丁.但补丁的顺序不能颠倒.
    Delphi5补丁--->ADO补丁1--->ADO补丁2
      

  3.   

    我添加记录的方法是用
    qry.SQL.Clear;
    qry.SQL.Add('insert ...');
    qry.ExecSQL;
    不过我想这可能不是添加的问题,因为能够成功添加。这是Delphi和ADO的问题吗?
    我现在手头没有补丁,还有没有其它的解决办法?
      

  4.   

    这是DELPHI的一个BUG,在DELPHI6或7已经修正,BORLAND的主页上提供补丁,就是解决这个问题的。
    这个补丁一定要打。