Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как узнать код ошибки в MS SQL2008  [new]
RAMZEZ II
Member

Откуда: Приморье
Сообщений: 535
Добрый день. Пытаюсь обработать, например, вставку записей, т.е.
INSERT INTO Table(.....)VALUES(.....)
IF @@ERROR <> 0
select @Err = 'ОШИБКА = '+CONVERT(varchar(10),@@ERROR)

В итоге получаю, если есть какая-нибудь ошибка - ОШИБКА = 0
Что нетак?
10 авг 11, 07:44    [11094964]     Ответить | Цитировать Сообщить модератору
 Re: Как узнать код ошибки в MS SQL2008  [new]
tpg
Member

Откуда: Novosibirsk
Сообщений: 23902
Не... надо сперва "поймать" код ошибки, например, сохранив его самой первой инструкцией в переменную, а потом уже проверять эту переменную.
Или, ещё лучше/проще (речь ведь идет о 2008), обернуть проверяемый код в

BEGIN TRY
...
END TRY
BEGIN CATCH
...
END CATCH

и в блоке CATCH читать значение функции ERROR_NUMBER().
10 авг 11, 07:56    [11094972]     Ответить | Цитировать Сообщить модератору
 Re: Как узнать код ошибки в MS SQL2008  [new]
aleks2
Guest
DECLARE @ER INT
INSERT INTO Table(.....)VALUES(.....)
SET @ER=@@ERROR
IF @ER <> 0
select @Err = 'ОШИБКА = '+CONVERT(varchar(10),@ER)
10 авг 11, 08:55    [11095071]     Ответить | Цитировать Сообщить модератору
 Re: Как узнать код ошибки в MS SQL2008  [new]
RAMZEZ II
Member

Откуда: Приморье
Сообщений: 535
Понятно! Блин как все просто!
10 авг 11, 09:12    [11095117]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить