Исключение повторяющихся записей при выполнении ряда операций с базой данных в рамках одной транзакции с JPA и MySQL База данных - PullRequest
0 голосов
/ 12 февраля 2020

Следуя сценарию, пожалуйста

  1. Я читаю две записи из базы данных table_A.
  2. Я объединяю свойство из записи _1 в запись_2. Существует уникальное ограничение на это свойство в table_A
  3. Я удаляю запись_1 из таблицы_A
  4. Я сохраняю объединенную запись_2 обратно в table_A

Результат: Исключение выдается в виде

Дублирующаяся запись 'Field_Value' для ключа 'Unique_Key_Constraint'

Я понимаю, что происходит. Свойство, которое я слил в запись_2, должно быть уникальным в таблице. Однако, поскольку транзакция не была зафиксирована после шага 3, запись_1 все еще существует в таблице. Таким образом, на шаге 4 выдается исключение, потому что record_2 имеет то же значение для уникального ключа, что и record_1

Итак, моя дилемма:

Как мне сделать sh шаги 3) и 4) в одной транзакции? Я не должен начинать новую транзакцию на шаге 3

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...