Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

JPA + Hibernate:Cara mendefinisikan batasan yang memiliki ON DELETE CASCADE

JPA memang menawarkan kemungkinan untuk cascade operasi (menggabungkan, bertahan, menyegarkan, menghapus) ke entitas terkait. Logika ada di JPA dan tidak menggunakan kaskade basis data.

@OneToMany(cascade=CascadeType.REMOVE)

Tidak ada cara yang sesuai standar JPA untuk melakukan kaskade dengan kaskade basis data. Jika kaskade seperti itu lebih disukai, kita harus kembali ke konstruksi khusus Hibernate:@ Dihapus . Ini bekerja dengan @OneToMany setidaknya, tapi dulu ada beberapa masalah dengan @OneToOne dan @OnDelete .

@OnDelete(action = OnDeleteAction.CASCADE)

Ketahuilah bahwa menambahkan anotasi ini ke batasan yang ada tidak akan memperbaruinya. Anda mungkin harus menghapusnya secara manual terlebih dahulu untuk memperbarui skema dengan benar.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Komponen waktu strip MySQL dari datetime

  2. Setel Ulang Kata Sandi Root MySQL

  3. mysql untuk python 2. 7 mengatakan Python v2.7 tidak ditemukan

  4. Formulir HTML / Php tidak ditambahkan ke database SQL

  5. Apakah mungkin membuat kolom di MySQL dengan ekspresi sebagai nilai default?