Я немного застрял в домашней работе db4o, и я действительно не знаю, как это решить.DB4O рекурсивное удаление, как это работает на самом деле?
Дело в том, что у меня есть простая школьная студенческая/кредитная/учебная база данных. Объекты имеют следующие атрибуты:
Студент:
- ID
- Имя
курс:
- ID
- Имя
- Тип
Кредит:
- Студент
- курс
- Grade
Теперь при удалении курса я должен также удалить кредит или кредиты, которые имеют ссылку на этот курс. Я прочитал руководство db4o и попытался понять всю эту вещь cascadeOnDelete, но, во-первых, я не уверен, что мне нужно установить для cascadeOnDelete значение true для курса или для объекта кредита?
Следующая проблема заключается в том, что я должен быть в состоянии найти все кредиты со ссылкой на этот курс. Как точно это сделать в db4o?
В руководстве db4o есть несколько примеров, но с жестко закодированными значениями, поэтому это не очень полезно. Есть ли способ использовать SQL-запросы в db4o для поиска кредитов с «правильными» ссылками?
Также мне нужно сначала сохранить курс, а затем найти кредиты, а затем удалить кредиты сначала и, наконец, курс?
Я совершенно смущен и не знаю, как действовать, поэтому любая помощь ценится. Благодарю.