当前位置: 代码迷 >> VB Dotnet >> 由于各种原因无法连接到数据库时,异常处理语句
  详细解决方案

由于各种原因无法连接到数据库时,异常处理语句

热度:75   发布时间:2016-04-25 02:04:17.0
由于各种原因无法连接到数据库时,错误处理语句
当我们打开单据输入界面时,会自动获取单号,那么当无法连接数据库时,就会出错。如何处理这个错误呢?
dim cn as ... 
省略
      strcn= "PROVIDER=SQLOLEDB;Database=zghas;Data Source=***,1433;Uid=sa ;Pwd=il0vehua;"
            cn.Open(strcn)

这里如何写错误处理。使得无法连接时,能继续其他程序。
------解决思路----------------------
出现异常时,你的程序的“最外层”的界面处理程序应该捕获它。例如在一个 WPF 桌面程序的启动 APP 文件中就会写
Class Application

    ' 应用程序级事件(例如 Startup、Exit 和 DispatcherUnhandledException)
    ' 可以在此文件中进行处理。

    Private Sub Application_DispatcherUnhandledException(sender As Object, e As System.Windows.Threading.DispatcherUnhandledExceptionEventArgs)
        MessageBox.Show(e.ToString, "操作异常", MessageBoxButton.OK)
    End Sub
End Class


其它的程序平台也是类似,就是在“最外层”应用程序层统一捕获异常,然后给用户一个提示,这就行了。

你可以判断 Exception 的类型,对于一些类型的e,你可以给出你自己的重新格式化的信息,而不是e.ToString。
------解决思路----------------------
“当我们打开单据输入界面时”,这是一个事件驱动的机制。

用户的行为触发了这个事件,这个事件执行中遇到了异常,这个异常一直“向外层抛出”以直到达你的最外层UI机制捕获它,然后你的 MessageBox.Show 之类的代码执行完毕之后,一切就结束了。

你的程序,又回到系统等待用户去触发下一个(不知道是什么类型的)事件的“什么也不干”的状态了。
  相关解决方案