2010-02-19 2 views
0

В моем проекте я использую использование hibernate и oracle как DB.Ошибка в спящем ограничении

У меня есть две таблицы с отношением внешнего ключа.

В спящем состоянии у меня есть отношения «один ко многим».

мой один-ко-многим код

набор имя = "имя_класса" Каскад = "все, все-удалить-сирота

один-ко-многим ..... на удаление =" каскад»

набор

но всякий раз, когда я detele я получаю ошибку нарушения ограничений ... ора: 222 ошибки не может удалить у него есть ребенок таблица у меня есть каскад =„все“, но у еще приходит ошибка. ..

Такая же ошибка при установке тоже. У меня есть primarykey как идентификатор атрибута, который является последовательностью. Так что в атрибуте идентификатора foreignkey его не вставлять и получать null нельзя вставить ошибку. Были ли у кого-то такие ошибки?

ответ

2

Try:

cascade="all,delete-orphan" 

или:

cascade="all-delete-orphan" 

вместо:

cascade="all,all-delete-orphan" 

Кроме того, убедитесь, что вы маркировать одну сторону ассоциации с:

inverse="true" 

если ассоциация двунаправленная.

Если это не решит вашу проблему, попробуйте немного очистить пояснения и предоставить дополнительную информацию (например, полные файлы сопоставления и классы Java для двух задействованных объектов).

Смежные вопросы