总觉得ADO使用起来比BDE麻烦多了,不知各位的感觉如何!

解决方案 »

  1.   

    不呀。ADO很好的。
    出现这种错误是你的ADO没有升级。
    你也可以在ADO的数据集空件关闭时,让其到First 或Last
    如:ADODataSet1.First
      

  2.   

    不是麻烦.这是很出名的BUG..
    装上两个补丁就行了.
      

  3.   

    你给你的delphi打补丁了吗?打一个试一下
      

  4.   


     谢谢各位,上面的问题升级后解决了,但是另外一个问题还是存在:我用一个Query和Grid相连,当用Delete删除一条记录时,总是提示:  “ 无法为更新定位行,一些值可能已在最后一次读取后已更改” 其实数据库中已经删除了,但是Grid没有刷新,为什么?怎么解决呢?
      

  5.   

    在afterDelete事件中写:
    Query.Close;
    Query.Open;
      

  6.   

     yyb2000(三流编程机器) 的方法无效!因为出错前根本就不会触发此事件
      

  7.   

    早期版本的ADO有这个BUG,只有数据库表为空时会出现这钟情况,因此你在操作表之前先用
     isempty()函数判断一下表是否为空,如果为空不要进行对于数据库的操作。另外一种办法升级ADO版本。
     
      

  8.   

    这不是ADO的问题,而是表结构的问题:你要删除的记录肯定还有其它相同的。因此在删除的时候定位到不止一条记录,这时就会出错!你把表索引好就没问题了。
      

  9.   


    冤枉啊,cdkogh(xp++)大哥,表里就那么几条记录,怎么可能呢!?
     如果是重复记录,也不是出来这个错误的