Выбросы спящего режима: невозможно удалить или обновить родительскую строку, хотя для родительской строки установлено зн ⇐ JAVA

Программисты JAVA общаются здесь
Anonymous
Выбросы спящего режима: невозможно удалить или обновить родительскую строку, хотя для родительской строки установлено зн

Сообщение Anonymous »

У меня есть две сущности: Автоматическая ставка и Ставка, поэтому:

Код: Выделить всё

@Entity
public class AutomaticBid {

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "ave_id", nullable = false)
private Ave ave;

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "orig_bid_id", nullable = false)
private Bid orginalBid;
}
и

Код: Выделить всё

public class Bid {

@ManyToOne(fetch = FetchType.LAZY)
@JoinColumn(name = "ave_id", nullable = false)
private Ave ave;

@ManyToOne(fetch = FetchType.LAZY, targetEntity = AutomaticBid.class)
@JoinColumn(name = "automatic_bid")
private AutomaticBid automaticBid;

}
Я хочу удалить все ставки и все автоматические ставки для данного Ave и действовать следующим образом:

Код: Выделить всё

for (Bid currentBid: ave.getBids()) {
currentBid.setAutomaticBid(null);
}

String deleteAutomBidQueryStr = " delete from AutomaticBid ab where ab.ave.id =:aveId";
Query deleteAutomBidQuery = this.em.createQuery(deleteAutomBidQueryStr);
deleteAutomBidQuery.setParameter("aveId", ave.getId());
int entriesDeletedAb = deleteAutomBidQuery.executeUpdate();
Однако в последней строке выдается следующее исключение:

Код: Выделить всё

Cannot delete or update a parent row: a foreign key constraint fails (`hometodeal`.`bid`, CONSTRAINT `FKddu37um70c1liaqbqjn4pjb2g` FOREIGN KEY (`automatic_bid`) REFERENCES `automatic_bid` (`id`))
Поскольку устанавливаю

Код: Выделить всё

currentBid.setAutomaticBid(null);
почему я получаю это исключение для всех ставок в рамках Ave?

Подробнее здесь: https://stackoverflow.com/questions/791 ... -row-set-t

Вернуться в «JAVA»