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

Laravel Tidak dapat menghapus atau memperbarui baris induk:batasan kunci asing gagal

Ya, itu skema Anda. Batasan pada likes.post_id akan mencegah Anda menghapus catatan dari posts tabel.

Salah satu solusinya bisa menggunakan onDelete('cascade') di likes file migrasi:

Schema::create('likes', function (Blueprint $table) {
    $table->integer('post_id')->unsigned();
    $table->foreign('post_id')->references('id')->on('posts')->onDelete('cascade');
});

Dengan cara ini, ketika sebuah postingan dihapus, semua suka terkait juga akan dihapus.

Atau, jika Anda memiliki hubungan dari model Post ke model Suka, Anda dapat $post->likes()->delete() sebelum menghapus postingan itu sendiri.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Kesalahan saat menggunakan fungsi DQL khusus dengan Doctrine dan Symfony2

  2. Mengapa CONCAT () tidak default ke charset default di MySQL?

  3. 2 Cara Mendaftar semua Prosedur Tersimpan di MySQL

  4. Jelaskan MySQL menjelaskan matematika rencana eksekusi, perbedaan antara dua rencana

  5. Tidak dapat mengonversi nilai tanggal/waktu MySQL ke System.DateTime di VS2010