|
|
|
Ошибка : ...relationship was not marked cascade PERSIST при удалении записей с таблицы.
|
|||
|---|---|---|---|
|
#18+
подскажите в чем может быть проблема: есть 2 таблицы Master , Detail. PK(Master) = FK (Detail). в Entity , Detail-таблицы связь выглядит так: Код: java 1. 2. 3. добавляю запись в Master. потом добавляю запись или несколько в Detail соответственно с ключом с таблицы мастер. пробую удалить записи. при удалении возникает ошибка с сообщением: During synchronization a new object was found through a relationship that was not marked cascade PERSIST. перезапускаю приложение, удаление происходит без ошибки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2016, 13:59 |
|
||
|
Ошибка : ...relationship was not marked cascade PERSIST при удалении записей с таблицы.
|
|||
|---|---|---|---|
|
#18+
Alex123F, В ORM вы оперируете сущностями а не записями. Поэтому что у именно подразумевается под "добавляю запись". Не понятно. Не понятно так же происходит вышеописанное в одной сессии или в разных. Сама ошибка обозначает что в сессии есть объект с дефолтным значением id, которое ORM распознал как не сохраненную сущность. Опять же ничего не сказано о том ассоциация двунаправленная или нет. Если нет, то в сессии у вас есть Detail с дефолтным id. ORM его пытается сохранить, потому что id этот то признак по которому ORM понимает связана ли сущность с записью в БД. Соответственно у Details без id, нашелся Master без id. Который бы при персисте хорошо бы тоже заперсистить. Но так как каскад не указан, то ORM об этом бодро рапортует. Код что ли покажите. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2016, 14:13 |
|
||
|
Ошибка : ...relationship was not marked cascade PERSIST при удалении записей с таблицы.
|
|||
|---|---|---|---|
|
#18+
Alex123Fподскажите в чем может быть проблема: есть 2 таблицы Master , Detail. PK(Master) = FK (Detail). в Entity , Detail-таблицы связь выглядит так: Код: java 1. 2. 3. добавляю запись в Master. потом добавляю запись или несколько в Detail соответственно с ключом с таблицы мастер. пробую удалить записи. при удалении возникает ошибка с сообщением: During synchronization a new object was found through a relationship that was not marked cascade PERSIST. перезапускаю приложение, удаление происходит без ошибки. Напишите Junit тест И приложите к топику . ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.04.2016, 14:20 |
|
||
|
Ошибка : ...relationship was not marked cascade PERSIST при удалении записей с таблицы.
|
|||
|---|---|---|---|
|
#18+
попытался еще раз обрисовать ситуацию. структура таблиц : A(Master)->B(Details) ; B(Master)->C(Details) : проблема : не понял еще как удалять записи с таблиц которые связаны между собой через PK-FK. Таблица "A" - Мастер для Таблицы "B". Кликаю на таблице "A" -получаю Item, вставляю его в Таблицу "B". Primary ключ с Таблицы "A" идет в запись таблицы "B". потом в цикле вставляю несколько записей в Таблицу "C". Таблица "B" - Мастер для Таблицы "C". в Каждую запись в Таблице "C" идет соответствующий ключ с Таблицы "B". Все что нужно - удалить все только что вставленное одним кликом. Выделяю тот же Item в Таблице "A", кликаю кнопку на удаление. сначала удаляются записи с таблицы "C" как коллекция с Таблицы "B". Потом удаляется соответствующая запись с Таблицы "B". Все проходит но только после перезапуска приложения. Если попытаться удалить сразу после Insert то самая "нижняя" таблица "C" "проскакивает", потому что коллекця таблицы "B" с записями с Таблицы "C" - пустая. потом идет попытка удалить запись с таблицы "B" и соответственно Exception. если перезапустить приложение то коллекция таблицы "B" заполнена и удаление происходит корректно. вырезки с Entyty‘s: Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. схема добавления и удаления записей : Код: java 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. просьба знающим, обьясните как удалять записи в подобной структуре A(Master)->B(Details) ; B(Master)->C(Details) : -обычнно через циклы; - как удалять каскадом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2016, 20:44 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=39218134&tid=2124136]: |
0ms |
get settings: |
8ms |
get forum list: |
12ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
69ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
32ms |
get tp. blocked users: |
1ms |
| others: | 203ms |
| total: | 340ms |

| 0 / 0 |
