Подтвердить что ты не робот

NHibernate - обновление таблицы с помощью триггера на ней вызывает ошибку - количество неожиданных строк: 2; ожидается: 1

Итак, я пытаюсь обновить объект в базе данных MS SQL 2005 с помощью NHibernate. Имейте в виду, что это устаревшая база данных, используемая во многих живых системах, и я не могу удалить триггеры.

Когда мой поставщик данных пытается выполнить команду .SaveOrUpdate(), я получаю два возврата (один для фактического обновления и один, когда запускается триггер)

Возврат raw выглядит следующим образом:

(затронуты 1 строка (ы))

(затронуты 1 строка (ы))

NHibernate затем генерирует исключение, подобное этому: "Неожиданное количество строк: 2; ожидается: 1"

Я по сути выгляжу эквивалентно "SET NOCOUNT ON" из сеанса.

Любые идеи?

4b9b3361

Ответ 1

И вы не можете обновить триггер, чтобы отключить/включить SET NOCOUNT до/после кода запуска?

SET NOCOUNT ON - ваш триггер SET NOCOUNT OFF

Ответ 2

NHibernate JIRA NH-1353 предоставляет исправление для проверки числа строк в файле конфигурации. Похоже, что этот патч не попал в ствол 2.x.