Rumah > Artikel > pangkalan data > Bagaimana untuk Mencegah INSERT Pendua dalam SQL Menggunakan Pernyataan MERGE?
Mencegah INSERT Duplikat dalam SQL
Memasukkan data ke dalam jadual pangkalan data adalah penting, tetapi kadangkala mengelakkan entri pendua menjadi satu cabaran. Satu contoh sedemikian timbul apabila memasukkan nilai yang disediakan oleh input pengguna. Dalam senario ini, pengguna mungkin tersilap menyerahkan rekod pendua, yang membawa kepada lebihan data dan isu integriti.
Untuk menangani masalah ini, satu penyelesaian yang berkesan ialah menggunakan pernyataan MERGE SQL. Pernyataan MERGE menggabungkan kefungsian operasi INSERT, UPDATE dan DELETE ke dalam satu pernyataan, memberikan kawalan terperinci ke atas manipulasi data. Ia membenarkan anda memasukkan baris baharu hanya jika ia belum wujud dalam jadual.
Untuk jadual khusus anda bernama "Perwakilan," dengan ID medan, No Ahli, DariYr dan ToYr, anda boleh menggunakan MERGE berikut pernyataan untuk mengelakkan sisipan pendua:
<code class="sql">MERGE INTO Delegates D USING (values(@MemNo, @FromYr,@ToYr)) X ([MemNo],[FromYr],[ToYr]) ON (insert unique key join) WHEN NOT MATCHED BY TARGET THEN INSERT ([MemNo],[FromYr],[ToYr])) VALUES (X.[MemNo],X.[FromYr],X.[ToYr]);</code>
Dalam pertanyaan ini:
Dengan menggunakan pernyataan MERGE ini, anda boleh memastikan baris pendua tidak disisipkan ke dalam jadual Perwakilan anda, memelihara integriti data dan mencegah rekod berlebihan.
Atas ialah kandungan terperinci Bagaimana untuk Mencegah INSERT Pendua dalam SQL Menggunakan Pernyataan MERGE?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!