本人用delphi5.5制作一个档案管理系统,数据库采用Access
在执行了以下语句:
    With datFrm.AQ_Users do
     Begin
       Close;       
       SQL.Clear;
       SQL.Add('select * from RD_Users');
       TRY
         Open;        
         First;
         ComboBox1.Items.Clear;
         While not eof do
         Begin
           ComboBox1.Items.Add(Fields[0].AsString);
           Next;
         End;
       EXCEPT
         Raise Exception.Create('系统读取数据有误!');
       END;
     End;结果却发生错误,提示信息为:Exception EOleException in moudle recdPrg.exe at OOOB7547.
BOF 或 EOF 中有一个是真,或者当前记录已经被删除,所需的操作要求一个当前记录。但数据库中有3条记录,请问“所需的操作”和“一个当前记录”是怎么解?请高手指教!谢谢:)

解决方案 »

  1.   

    单纯看这段代码是没有什么错误,你确定你连上数据库了吗?或者你showmessage(Fields[0].AsString)看有没有内容
      

  2.   

    数据库连接上了
    因为ComboBox1都显示了数据库各条记录
      

  3.   

    UP
    用delphi5.5制作一个档案管理系统,数据库采用Access
    操作各个数据表都正确无误,但每次退出系统时候,却发生错误,提示信息为:Exception EOleException in moudle recdPrg.exe at OOOB7547.
    BOF 或 EOF 中有一个是真,或者当前记录已经被删除,所需的操作要求一个当前记录。但我每个数据表均有记录,请高手指教!谢谢:)
      

  4.   

    代码来看是没有问题的。
    建议使用Delphi7试试吧
      

  5.   

    因为你安了sqlserver2000,它把你的系统ado升级到了2.6,而delphi5好像用的ado2.1,有个bug,
    所以,你需要安一下升级包就行了 
      

  6.   

    谢谢各位指点
    我下载了D5ADOUpgrade.exe和d5adoupdate2.exe两个升级包
    但是不知道为什么装上后,再打开delphi5时,delphi5报错,进去看发现ADO组件栏都没有了
    怎么回事呢?
    不过我也想用delphi6或者7,但总是装到一半就报错,郁闷啊,怎么回事呢?
      

  7.   

    http://www.tomore.com/index.php
    這裡有Delphi7下載