簡體   English   中英

如何在SqlException中標識所有與連接相關的異常類型?

[英]How can I identify all connection related exception types in an SqlException?

我正在編寫一個VB.net Winforms應用程序,該應用程序連接到Sql Server2008。(也接受C#答案)

我試圖區分與數據庫連接相關的任何SqlException和其他特定於SQL的錯誤(例如語法不正確等)。

我在連接周圍使用try / catch,如下所示:

Try
   //code to open the connection/access the DB/etc.
Catch ex As SqlException When ex.Number=???
   //Do stuff
End Try

我以為檢查錯誤代碼是正確的方法。 我的問題是,與數據庫的連接有關的錯誤代碼很多(我不確定是多少)。 例如:

121 =超時(可能是由於斷開網絡連接引起的)。

53 =無法連接(再次,可能是由於未連接到網絡引起的)。

1326 =您已連接到物理服務器計算機,但Sql Server未運行。

而且我相信還有很多很多。 我是否必須單獨檢查每個項目,還是有更好的方法? 如果我必須單獨檢查它們,是否可以參考任何與連接相關的列表?

正如@jdweng在注釋中建議的那樣,我在查詢周圍添加了一個try / catch塊。 這樣,如果發生了異常,除了與連接有關,別無其他。

很簡單! 再次感謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM