Модераторы: Akina
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> хранимая процедура не прерывается, MS SQL 2008 
:(
    Опции темы
lankin
Дата 18.6.2009, 12:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 377
Регистрация: 13.12.2006

Репутация: нет
Всего: нет



В чем вопрос: в хранимой процедуре есть два INSERT, следующие друг за другом. Они заключены в рамки транзакции.
Первый INSERT записывает данные в таблицу с триггером. Триггер работает на INSERT/UPDATE.
Когда данные неверные вносятся - все хорошо, триггер ругается, НО отката транзакции нет и сразу за
первым INSERT-ом отрабатывает второй.
В теле триггера есть выражение SET XACT_ABORT ON, но и это не помогает.
Как прервать выполнение процедуры и поднять описание ошибки из триггера?
PM MAIL   Вверх
lankin
Дата 18.6.2009, 13:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 377
Регистрация: 13.12.2006

Репутация: нет
Всего: нет



Все, сделал)))
Поставил выполнение INSERT-ов в блок TRY-CATCH и в CATCH - делаю RAISERROR smile 
PM MAIL   Вверх
Zioma
Дата 19.6.2009, 08:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 150
Регистрация: 22.8.2007

Репутация: 5
Всего: 5



Можно еще анализировать переменную @@error.
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "MS SQL"
Akina

Akina

Запрещается!

Публиковать ссылки и обсуждать взлом чего бы то ни было.

  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы составления неспецифических запросов рассматриваются здесь
  • Используйте теги [code=sql][/code] для подсветки кода. Используйтe чекбокс "транслит" (возле кнопок кодов) если у Вас нет русских шрифтов.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Zloxa, Akina.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MS SQL Server | Следующая тема »


 




[ Время генерации скрипта: 0.0388 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.