![](/icons/34452de.gif)
![](/icons/34452dou.gif)
![](/icons/34452dou.gif)
![](/icons/34452dou.gif)
基本使用方法BEGIN TRY
{ sql_statement |
statement_block }
END TRY
BEGIN CATCH
{ sql_statement |
statement_block }
END CATCH
![](/icons/34452dou.gif)
![](/icons/34452de.gif)
![](/icons/34452dou.gif)
![](/icons/34452de.gif)
![](/icons/34452dou.gif)
![](/icons/34452de.gif)
![](/icons/34452dou.gif)
![](/icons/34452dou.gif)
![](/icons/34452de.gif)
![](/icons/34452yi.gif)
DECLARE @X INT
-- Divide by zero to generate Error
SET @X = 1/0
PRINT 'Command after error in TRY block'
END TRY
BEGIN CATCH
PRINT 'Error Detected'
END CATCH
PRINT 'Command after TRY/CATCH blocks'
另外try catch可以嵌套Begin TRY
delete from GrandParent where Name = 'John Smith'
pr
![](/icons/34452int.gif)
End Try
Begin Catch
Pr
![](/icons/34452int.gif)
Begin Try
delete from Parent where GrandParentID =
(select distinct ID from GrandParent where Name = 'John Smith')
Pr
![](/icons/34452int.gif)
End Try
Begin Catch
pr
![](/icons/34452int.gif)
Begin Try
delete from child where ParentId =
(select distinct ID from Parent where GrandParentID =
(select distinct ID from GrandParent where Name = 'John Smith'))
pr
![](/icons/34452int.gif)
End Try
Begin Catch
Pr
![](/icons/34452int.gif)
End Catch
End Catch
End Catch
另外
![](/icons/34452dou.gif)
![](/icons/34452dou.gif)
![](/icons/34452de.gif)
![](/icons/34452dou.gif)
![](/icons/34452dou.gif)
![](/icons/34452dou.gif)
![](/icons/34452kh.gif)
![](/icons/34452kh.gif)
![](/icons/34452kh.gif)
![](/icons/34452kh.gif)
![](/icons/34452kh.gif)
![](/icons/34452kh.gif)
![](/icons/34452include.gif)
![](/icons/34452dou.gif)
![](/icons/34452de.gif)
DECLARE @X INT
-- Divide by zero to generate Error
SET @X = 1/0
PRINT 'Command after error in TRY block'
END TRY
BEGIN CATCH
PRINT 'Error Detected'
SELECT ERROR_NUMBER
![](/icons/34452kh.gif)
ERROR_SEVERITY
![](/icons/34452kh.gif)
ERROR_STATE
![](/icons/34452kh.gif)
ERROR_PROCEDURE
![](/icons/34452kh.gif)
ERROR_LINE
![](/icons/34452kh.gif)
ERROR_MESSAGE
![](/icons/34452kh.gif)
END CATCH
PRINT 'Command after TRY/CATCH blocks'
最后输出Error Detected
Err_Num Err_Sev Err_State Err_Proc Err_Line Err_Msg
------- ------- --------- -------------------- --------- --------------------------------
8134 16 1 NULL 4 Divide by zero error encountered.
最新评论