2010-12-03 2 views
18

Я запускаю сценарий Insert, который должен вставить 13 381 строку в пустой БД из SSMS. Он говорит, что мой «запрос завершен с ошибками» и только вставляет 13357 строк.Как мне получить SQL Server 2008r2, чтобы показать мне ошибки?

Ничего не отображается в списке ошибок. Как найти ошибки в скрипте?

Спасибо!

ответ

31

попробовать это:

begin try 

    --your inserts here 

end try 
begin catch 
    --returns the complete original error message as a result set 
    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 

    --will return the complete original error message as an error message 
    DECLARE @ErrorMessage nvarchar(400), @ErrorNumber int, @ErrorSeverity int, @ErrorState int, @ErrorLine int 
    SELECT @ErrorMessage = N'Error %d, Line %d, Message: '+ERROR_MESSAGE(),@ErrorNumber = ERROR_NUMBER(),@ErrorSeverity = ERROR_SEVERITY(),@ErrorState = ERROR_STATE(),@ErrorLine = ERROR_LINE() 
    RAISERROR (@ErrorMessage, @ErrorSeverity, @ErrorState, @ErrorNumber,@ErrorLine) 
end catch 
+0

SWEET, что это удобный кусочек кода спасибо! – 2010-12-03 16:57:46

Смежные вопросы