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

Menghapus dari tabel MySQL dengan batasan kunci asing

Sayangnya, penghapusan otomatis yang menurut Anda seharusnya terjadi tidak terjadi. Anda perlu menghapus secara manual baris di Tabel B yang berisi ID dari baris di Tabel A yang ingin Anda hapus.

Coba tambahkan ON DELETE CASCADE ke definisi kolom kunci asing Anda di Tabel B.

Jika Anda menggunakan Hibernate, atau alat ORM lainnya, itu akan memiliki mekanisme "kaskade" yang akan menangani ini secara otomatis. Tapi di sini karena Anda berinteraksi dengan database secara langsung, Anda harus ingat bahwa baris tidak dapat dihapus jika ID baris tersebut ada di tabel lain sebagai kunci asing (seperti dalam kasus Anda, kunci utama A ada di beberapa baris di B). Kecuali tentu saja Anda menentukan properti ON DELETE CASCADE.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQL - Periksa apakah kolom bertambah secara otomatis

  2. Buat Spark Dataframe dari SQL Query

  3. impor mysql di windows

  4. Mengembalikan nilai meskipun tidak ada hasil

  5. Susunan MySQL untuk menyimpan data multibahasa dari bahasa yang tidak dikenal