Mencapai "INSERT ... ON DUPLICATE KEY (do nothing)" Functionality
Dalam senario yang disediakan, objektifnya adalah untuk memasukkan baris ke dalam jadual dengan kunci unik tanpa mencetuskan ralat atau mengemas kini baris jika kunci sudah wujud.
Pilihan 1: MASUKKAN ... PADA KEMASKINI KUNCI PENDUA
Walaupun sintaks yang disediakan mencadangkan pilihan "INSERT ... PADA KEMASKINI KUNCI DUA", ia tidak menawarkan cara untuk mengarahkan pangkalan data secara eksplisit untuk "tidak berbuat apa-apa." Sebaliknya, ia memerlukan penetapan nilai kemas kini untuk kes kunci pendua.
Pilihan 2: INSERT ... PADA KEMASKINI KUNCI DUA>
Pendekatan alternatif ialah menggunakan "INSERT ... PADA KEMASKINI KUNCI PENDUA>
Pilihan 3: INSERT IGNORE
Untuk senario yang tidak membimbangkan ralat, sintaks "INSERT IGNORE" boleh digunakan Pendekatan ini mengabaikan semua ralat yang mungkin ditimbulkan oleh operasi sisipan, termasuk ralat kunci pendua dan penambahan auto. keletihan lapangan Ia hanya menekan ralat tanpa mengubah yang sedia ada baris.
Pengesyoran
Untuk kes di mana ralat adalah kritikal dan keletihan autoincrement membimbangkan, "INSERT ... PADA KEMASKINI KUNCI DUA>
Atas ialah kandungan terperinci Bagaimana untuk Mencapai Fungsi 'INSERT ... ON DUPLICATE KEY (do nothing)' dalam SQL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!