Soalan: Bolehkah Kekangan Utama Asing Ditangguhkan Sehingga Komit dalam MySQL?
Persoalan ini timbul apabila melakukan sisipan pukal dalam MySQL, terutamanya apabila mencuba untuk memasukkan data ke dalam jadual yang dipautkan oleh kunci asing. Walaupun melaksanakan sisipan dalam transaksi, ralat kekangan boleh berlaku.
Jawapan:
Malangnya, menurut dokumentasi MySQL, semakan integriti rujukan dalam InnoDB dilakukan serta-merta semasa setiap baris sisipan, bukannya ditangguhkan sehingga transaksi dilakukan. Tingkah laku ini menyimpang daripada standard SQL, yang menentukan semakan kekangan tertunda.
Semakan segera mengenakan had, terutamanya apabila mengendalikan jadual rujukan sendiri atau senario di mana rujukan kunci asing perlu dikemas kini secara berurutan. Sehingga MySQL melaksanakan semakan kekangan tertunda, operasi sedemikian mungkin memerlukan pendekatan alternatif.
Atas ialah kandungan terperinci Bolehkah Kekangan Utama Asing Ditangguhkan Sehingga Komit dalam MySQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!