sql >> Databasteknik >  >> RDS >> Mysql

JPA + Hibernate:Hur man definierar en begränsning som har ON DELETE CASCADE

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.



  1. Hur man använder AI för SQL Tuning för en riktig automatiserad process

  2. Vad är det bästa sättet att räkna sidvisningar i PHP/MySQL?

  3. Ansluter Oracle till Amazon Aurora

  4. asynkronisera och vänta på MySQL-anrop i nod js