2009-11-27 6 views
1

Нужно ли использовать try catch в моей хранимой процедуре, чтобы узнать, где именно произошла ошибка в моей процедуре, или я могу достичь того же, если я использую SqlConnection.BeginTransaction в моей форме ASP.NET или просто попытаться поймать может быть ... ???обработка обработки хранимых процедур в asp.net

Я попытался реализовать try catch в своей хранимой процедуре .. с использованием SQL Server 2005, но не знает TRY и CATCH-ключевых слов или функции ERROR_MESSAGE() ... я также установил SQL Server Service Service Service Service, но все же это не работа.

если ошибка выбрана с использованием метода RAISERROR, исключение будет показано в моей форме ASP.NET?

ответ

1

Окружайте вызов БД в своем коде с помощью try-catch ... попробуйте и поставьте его на уровень кода. Если вы используете уровень доступа к данным, поставьте также try-catch с помощью одного оператора throw. Затем обрабатывайте его в коде, когда он пузырится вверх.

1

Чтобы использовать TRY ... CATCH в SQL Server смотрите данное руководство: http://msdn.microsoft.com/en-us/library/ms175976.aspx

BEGIN TRY 
    { sql_statement | statement_block } 
END TRY 
BEGIN CATCH 
      [ { sql_statement | statement_block } ] 
END CATCH 

Вы можете поймать исключение, используя фиксатор (SqlException ех). Вы найдете его в пространстве имен System.Data.SqlClient. Вы также можете проверить уровень серьезности.

+0

примечание ссылка в ответе на португальском языке, здесь ссылка на английский http://msdn.microsoft.com/en-us/library/ms175976.aspx –

+0

Исправлена ​​ссылка, извините: D –

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