Не может удалить объект с помощью session.delete()

У меня есть какая-то сущность в моем приложении, и некоторые из них связаны между собой многими, когда я пытаюсь удалить их, я получаю сообщение об ошибке:"Невозможно удалить или обновить родительскую строку: ограничение внешнего ключа....".

Это пример:

class Task{
  @OneToMany(mappedBy="task")
  List<TaskStep> steps;
}
class TaskStep{
  @ManyToOne(cascade=CascadeType.ALL)
  Task task;
  @ManyToMany(cascade=CascadeType.ALl)
  List<Operator> operators
}
class Operator{
  @ManyToMany(mappedBy=opertors)
  List<TaskStep> steps;
}

Когда я захочу удалить объект задачи, я получу исключение.

Зачем? Я просто хочу удалить сам объект задачи и связанные строки в t_taskstep_t_operator.

Как это сделать?

1 ответ

Решение

Попробуй это,

class Task{
  @OneToMany(cascade = CascadeType.ALL)
  List<TaskStep> steps;
}

Это также удалит соответствующую запись из TaskStep.

Другие вопросы по тегам