У меня есть ниже часть обработки ошибок в последнем разделе моей динамической процедуры.Но это не работает правильно.Что не так в части обработки ошибок ниже.Пожалуйста, сделайте это правильно.
IF @@ERROR <> 0 GOTO ErrorHandler
SET NOCOUNT OFF
RETURN(0)
ErrorHandler:
Return(@@ERROR)
New Method 1
declare Int @Errorcode;
IF @@ERROR <> 0 GOTO ErrorHandler
SET NOCOUNT OFF
RETURN(0)
ErrorHandler:
@Errorcode= @@ERROR
Return @Errorcode;
New Method 2:
BEGIN TRY
EXECUTE SQL @QUERY
END TRY
BEGIN CATCH
SELECT
ERROR_NUMBER() AS ErrorNumber,
ERROR_MESSAGE() AS ErrorMessage;
END CATCH
GO