JPA erbjuder möjlighet att kaskadera operationer (sammanfoga, bevara, uppdatera, ta bort) till associerade enheter. Logic är i JPA och använder inte databaskaskader.
@OneToMany(cascade=CascadeType.REMOVE)
Det finns inget JPA-standardkompatibelt sätt att göra kaskader med databaskaskader. Om en sådan kaskad är att föredra måste vi falla tillbaka till Hibernate-specifik konstruktion:@ På Radera
. Det fungerar med @OneToMany
åtminstone, men det brukade vara några problem tidigare med @OneToOne
och @OnDelete
.
@OnDelete(action = OnDeleteAction.CASCADE)
Tänk på att om du lägger till denna anteckning till en befintlig begränsning kommer den inte att uppdateras. Du kan behöva släppa det manuellt först för att uppdatera schemat korrekt.