我想從外部存儲過程中獲取由存儲過程導致的錯誤集合。有沒有辦法解決這個問題。Sql Server 2008嘗試抓取錯誤集合
樣品如下。我得到的第一個錯誤80125.我也想獲得關於第二個80054.信息是否有SQL Server中的集合或服務器變量(我不知道如何從淨得到這個)
BEGIN TRY
DECLARE @RC int
EXEC @RC= TestErrorProc
END TRY
BEGIN CATCH
SELECT
ERROR_NUMBER() AS ErrorNumber,ERROR_SEVERITY() AS ErrorSeverity
,ERROR_STATE() AS ErrorState ,ERROR_PROCEDURE() AS ErrorProcedure
,ERROR_LINE() AS ErrorLine ,ERROR_MESSAGE() AS ErrorMessage
END CATCH
- 給出以下內容 80125 15 1 TestErrorProc 11數據庫自定義錯誤:過程:PROCEDURENAME;用戶:DBO;工作站:企業 - 歧義錯誤解決 - 以下錯誤是由第五可能無效的參數引起
CREATE PROCEDURE [dbo].[TestErrorProc]
AS
DECLARE @intErr int, @intRows int, @strUser varchar(64), @strWks varchar(64)
DECLARE @strTraceMsg varchar(255)
DECLARE @intRet int
SELECT @strUser = USER_NAME(), @strWks = HOST_NAME()
SET @strTraceMsg = ' Row 1'
BEGIN
--Ambiguous Testing
RAISERROR(80125, 15, 1, 'PROCEDURENAME', @strUser, @strWks, 'TABLENAME-Column information')
RAISERROR(80054, 15, 1, 'PROCEDURENAME', @strUser, @strWks, @strTraceMsg, 'Issue details - business Error')
RETURN(-100)
END
你的意思是2005年,如在標籤中,還是2008年,如標題中所示? – 2011-04-20 20:33:01