2010-06-28 72 views

回答

1

是不是隻是各種各樣的SQLException?

你可以在System.Data.SqlClient中找到它。

try 
{ 
    //code 
} 
catch(SqlException sqlException) 
{ 
    //code 
} 

更新:感謝您的更正。

+0

如果他想抓住/檢查那個特定的錯誤,他將不得不檢查'sqlException.Number'並檢查SQL Server錯誤號是否存在這個特定錯誤(我在查找確切的數字時遇到了一些問題映射到這裏雖然給出的錯誤)。 – nos 2010-06-28 10:05:30

2

只是給一個替代的觀點,我不會試圖捕捉它。如果我是期待這種情況下,我會簡單地檢查之前的外鍵數據我嘗試刪除。這避免了複雜性,特別是如果DELETE不是發生在工作單元中的第一件事。而在您有多個外鍵的情況下,基於字符串的消息對您的代碼不是很有幫助。

當然,我會保留外鍵 - 作爲邊緣情況的完整性檢查/回退(例如併發性)。

相關問題