Нужно ли совершать транзакцию для запуска триггера? - PullRequest
0 голосов
/ 19 марта 2019

В моем приложении я обновляю таблицу через Hibernate, и для этой таблицы есть триггер UPDATE.У меня вопрос: нужно ли фиксировать ту транзакцию (Spring Transaction), в которой происходит эта операция обновления, чтобы запустить триггер?

Я использую транзакцию Spring и базу данных Oracle

Спасибо.

Ответы [ 2 ]

0 голосов
/ 19 марта 2019

Нет, но Hibernate часто ожидает завершения транзакции для запуска всех обновлений SQL, поэтому может выглядеть так.

Попробуйте сбросить изменения, используя EntityManager#flush (JPA api) или JpaRepository#flush (из Spring Data) или JpaRepository#saveAndFlush после обновления сущности.

0 голосов
/ 19 марта 2019

Да, триггеры уровня базы данных запускаются, когда данные достигают диска. Это происходит только когда коммит сделан.

...