用ADOConnection,ADOQuery做了一个频繁操作数据库的程序,运行大部分时候正常,有时候数据库一出错,然后报一连串的异常,程序就自动关闭退出...找遍了代码,一直没有Application.Terminate...怪事,为什么会自己退出呢? 如何避免? 请教一下解决方案!

解决方案 »

  1.   

    try
      ...
    except 
      on E:Exception do  
      Memo1.lines.add(E.message);
    end;屏蔽了异常,并未弹出任何异常窗口,所有异常都在Memo1里显示;情况往往是看到一连串的异常显示在Memo1里,然后程序自动关闭...
      

  2.   

    ADO连接有问题,你再查看一下相关连接,不行的话换一下ADO试试,我也遇到这样的问题。在插入记录时程序就自动关闭退出。
      

  3.   

    是不是有时候同时有几个地方都开启了这个ADOQuery?
      

  4.   

    没有,但存在不同的ADOQuery通过不同的ADOConnection对同一个表进行操作,一个插入,另一个进行更新;理论上插入操作在更新以前;
      

  5.   

    可能有N个ADOQuery开启后没有关闭。
      

  6.   

    “不同的ADOQuery通过不同的ADOConnection对同一个表进行操作,一个插入,另一个进行更新”
    这样做可不好,最好是用一个ADOConnection,如果一定要不同的ADOQuery操作同一个表,要记得每次操作完表后要关闭ADOQuery。
      

  7.   

    不一定要有Application.Terminate才可以实现终止程序阿
    比如说你的ADOQuery1操作非法地址
    操作发生冲突
    这些都可能引发致命错误
    导致程序终止的