0
我有一個類似的問題,這個問題:TRY CATCH with Linked Server in SQL Server 2005 Not Working捕獲錯誤<20
我跑這個嘗試捕捉:
Declare @command nvarchar(100)
SET @command = 'SELECT column FROM table'
BEGIN TRY
BEGIN TRY
exec ' + @Server_Name + @DB_name + '.dbo.sp_executesql @command
END TRY
BEGIN CATCH
PRINT EXCEPTION
END CATCH
我不認爲我可以使用RAISEERROR
,因爲我沒有運行我自己的存儲過程,我只運行一個簡單的select語句。我試過使用@@ERROR
,但這不適用於鏈接服務器。因爲我得到的誤差小於20,我碰到這個問題:
如果遠程存儲過程調用RAISERROR與嚴重程度小於 20和遠程存儲過程是一個try塊中作用域的 地方服務器,RAISERROR不會導致控制傳遞到TRY ... CATCH的CATCH 塊構建
http://msdn.microsoft.com/en-us/library/ms191515.aspx
我發現這個問題:How to capture error message returned from linked server?尚未回答Ë ither。