在程序的各个模块都可能访问数据库,如果数据库断开,系统会出现很多非法操作的提示,我应该采用那种办法来处理?1.在每个程序段都加上保护,给出提示。这样做的工作量太大,而且考虑不一定全面。2.在每个访问数据库的地方进行判断,如果数据库连接断开,则退出应用系统。可是这样做的时候,我不知道如何退出应用程序,该释放哪些资源?

解决方案 »

  1.   

    不用在退出某个窗体的时候 关闭ADO连接吗,释放某些资源吗?
      

  2.   

    不用到处用tryfinally
    end;或tryexcept
    end记得有个ApplicationEvents控件吧,捕获全局的出错
    ApplicationEvents1Exception(Sender: TObject;E: Exception);对E.Message识别下就知是不是数据库出错了,然后退出的退出,不认识的写进日志文件,就搞定了
      

  3.   

    1.所有模块用同一个数据库连接
    2.数据库连接有断开事件
    3.可以用个ApplicationEvents来统一处理异常
      

  4.   

    基本同意 skertone 的意见..以前在项目中做过...意思和他的思路差不多.主要还是看你自己的程序需要