sql >> Databáze >  >> RDS >> Mysql

JPA + Hibernate:Jak definovat omezení s ON DELETE CASCADE

JPA nabízí možnost kaskádovat operace (sloučit, přetrvávat, aktualizovat, odebrat) do přidružených entit. Logika je v JPA a nevyužívá databázové kaskády.

@OneToMany(cascade=CascadeType.REMOVE)

Neexistuje žádný způsob, který by vyhovoval standardu JPA, jak dělat kaskády s databázovými kaskádami. Pokud jsou preferovány takové kaskády, musíme se vrátit ke specifické konstrukci Hibernate:@ OnDelete . Funguje s @OneToMany alespoň, ale v minulosti bývaly nějaké problémy s @OneToOne a @OnDelete .

@OnDelete(action = OnDeleteAction.CASCADE)

Uvědomte si, že přidání této anotace k existujícímu omezení ji neaktualizuje. Pro správnou aktualizaci schématu jej možná budete muset nejprve ručně upustit.



  1. T-SQL:kontrola formátu e-mailu

  2. Jak správně uložit data do databáze?

  3. Cizí klíč MySQL povolit NULL?

  4. Vložte arabský text MySQL