Mengendalikan Konflik Kunci Pendua dalam MySQL: INSERT...PADA KEMASKINI KUNCI DUA
Apabila memasukkan data ke dalam jadual MySQL dengan kekangan kunci unik, konflik timbul jika kunci pendua ditemui. Pernyataan INSERT...ON DUPLICATE KEY UPDATE
secara elegan menyelesaikan masalah ini dengan membenarkan anda sama ada memasukkan baris baharu atau mengemas kini baris sedia ada berdasarkan kunci unik.
Mari kita pertimbangkan jadual dengan lajur 'ID' yang unik. Jika anda cuba memasukkan baris dengan ID sedia ada, pernyataan INSERT
standard akan gagal. INSERT...ON DUPLICATE KEY UPDATE
menyediakan penyelesaian.
Contoh Senario:
Bayangkan anda menambah data pada users
jadual:
INSERT INTO users (ID, Name, Age) VALUES (1, "Bob", 30);
Jika pengguna dengan ID = 1
sudah wujud, pertanyaan ini akan gagal.
Penyelesaian:
Gunakan INSERT...ON DUPLICATE KEY UPDATE
:
INSERT INTO users (ID, Name, Age) VALUES (1, "Bob", 30) ON DUPLICATE KEY UPDATE Name = "Bob", Age = 30;
Penjelasan:
INSERT
menentukan data yang akan dimasukkan.ON DUPLICATE KEY UPDATE
menentukan tindakan kemas kini jika kunci pendua ditemui.ID = 1
wujud, lajur Name
dan Age
akan dikemas kini dengan nilai yang disediakan. Jika ID = 1
tidak wujud, baris baharu akan disisipkan.Pendekatan ini memastikan integriti data sambil menghalang ralat yang disebabkan oleh sisipan kunci pendua. Ia adalah cara yang ringkas dan cekap untuk mengurus kemas kini data dalam MySQL.
Atas ialah kandungan terperinci Bagaimana untuk Memasukkan atau Mengemas kini Baris dalam MySQL Menggunakan INSERT...PADA KEMASKINI KUNCI DUA?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!