試圖在sqlserver 2000的觸發器中處理類型轉換錯誤,未果~~

來源:互聯網
上載者:User
鬱悶,本意想在觸發器裡面把一個字元型的欄位轉換成INT型變數,如果出錯,則設變數 = 0,結果總是一出錯就跳出來,對@@error的判斷一點都沒用,於是在網上搜,搜到MSDN中在介紹SQL Server 2005 Beta 2 Transact-SQL 增強功能中,講異常處理時,寫道這樣一段話:

SQL Server 2005 Beta 2 以 TRY...CATCH Transact-SQL 結構的形式引入了一種簡單但非常強大的異常處理機制。

以前版本的 SQL Server 要求在每個懷疑可能出錯的語句之後包含錯誤處理代碼。要將錯誤檢查代碼集中在一起,必須使用標籤和 GOTO 語句。此外,諸如資料類型轉換錯誤之類的錯誤會導致批處理終止;因此,無法用 Transact-SQL 捕獲這些錯誤。SQL Server 2005 Beta 2 解決了這些問題中的很多問題。

現在可以捕獲和處理過去會導致批處理終止的錯誤,前提是這些錯誤不會導致串連中斷(通常是嚴重度為 21 及以上的錯誤,例如,表或資料庫完整性可疑、硬體錯誤等等)。

參考網址:http://www.microsoft.com/china/MSDN/library/default.mspx?mfr=true

不爽~~~~~~~~~

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.