У меня есть @OnDelete аннотация для всех членов @OneToMany. Каким будет порядок удаления этих объектов при удалении родительского объекта. Можно ли предположить, что это будет порядок, в котором объявляются объекты.
Так вы используете SQL каскадное удаление на удаление вместо обычного механизма гибернации. Поскольку вы используете механизм базы данных, у меня возникает соблазн сказать, что порядок, в котором объявлены объекты, не имеет значения (база данных просто не знает об этом порядке), и я бы просто ожидал, что база данных будет обрабатывать вещи соответствующим образом.
Это может повлиять на порядок столбцов, если вы создаете модель из аннотации, но, хотя:
- Я был бы очень удивлен, если это имело какое-либо влияние, что бы сделать все чрезвычайно хрупки, непригодным для использования.
- Hibernate/JPA ничего не говорит о порядке столбцов (потому что это не имеет значения, см. Выше).
Но я столкнулся несколько вопросов, если B INTURN имеет внешний ключ ссылку на который вызывает сбой при удалении
Следует отметить, что в этом вопросе, это очень релевантно IMO. Возьмите мой ответ с солью, но, как я уже сказал, я ожидаю, что механизм базы данных будет обрабатывать вещи соответствующим образом, для механизма базы данных требуются все необходимые метаданные. Но я не эксперт по базам данных, я не уверен, что говорит теория.
Возможно взглянуть на такие вопросы, как:
Или задать вопрос о теории (и практики для заданного двигатель).
Что случилось, когда вы попробовали? –
Я не вижу журналы SQL, когда вы выполняете каскадное удаление. Но я столкнулся с несколькими проблемами, если B inturn имеет ссылку на внешний ключ для A, которая приводит к сбою A при удалении. Отсюда вопрос – Sam