SQL Server Try Catch錯誤處理

2021-09-20 14:05:54 字數 1075 閱讀 6349

一。語法要點:

begin try

end try

begin catch

[ ]

end catch

[ ; ]

異常部分:

在 catch 塊的作用域內,可以使用以下系統函式來獲取導致 catch 塊執行的錯誤訊息:

error_number() 返回錯誤號。

error_severity() 返回嚴重性。

error_state() 返回錯誤狀態號。

error_procedure() 返回出現錯誤的儲存過程或觸發器的名稱。

error_line() 返回導致錯誤的例程中的行號。

error_message() 返回錯誤訊息的完整文字。 該文字可包括任何可替換引數所提供的值,如長度、物件名或時間。

二。例項:

step 1:

create procedure syslogerror

asbegin

insert into systemerrorlog

(spname,description,logtime)

values

(error_procedure(),convert(nvarchar(max),error_line()) + ':' + error_message(),getdate())

endstep 2:

begin try

begin transaction;

。。。。

commit transaction;

end try

begin catch

if @@trancount > 0

begin

rollback transaction;

endexecute [dbo].[syslogerror];

end catch;

#資料庫技術

SQL Server Try Catch 異常捕捉

select trancount as a begin try begin tran select trancount as a1 insert into a2a id1 values a commit tran end try begin catch select trancount as a2 ...

middleware generic錯誤處理機制

在cl smw mflow的 validate 方法裡,會call adapter object specific的validation function module.validation function module如果有錯誤,會assemble到changing引數error segment...

Zend Optimizer錯誤487處理方法

只要這個錯誤一旦出現,dz的論壇就慢的要死,zned也安裝了無數遍就是沒有解決 我就把php.ini和原來的5.04一下的版本比較發現 extension php yaz.dll extension php zip.dll 把它加這兩個上去並把 extension php zip.dll 前面的 去...