Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mencegah Penyelitan Data Duplikat dalam MySQL Menggunakan PHP?

Bagaimana untuk Mencegah Penyelitan Data Duplikat dalam MySQL Menggunakan PHP?

Mary-Kate Olsen
Lepaskan: 2024-12-14 17:47:09
asal
344 orang telah melayarinya

How to Prevent Duplicate Data Insertion in MySQL Using PHP?

Menghalang Penyelitan Data Pendua dalam Pangkalan Data MySQL

Dalam senario di mana jadual MySQL dengan id lajur, pageId dan nama perlu mengekalkan unik gabungan pageId dan nama, menghalang pemasukan data pendua menjadi penting. Artikel ini meneroka amalan terbaik untuk mengendalikan entri pendua semasa pemasukan data menggunakan PHP.

Langkah 1: Cipta Indeks Unik

Untuk menguatkuasakan keunikan pada gabungan pageId dan nama lajur, indeks boleh dibuat menggunakan SQL berikut pernyataan:

ALTER TABLE thetable ADD UNIQUE INDEX(pageid, name);
Salin selepas log masuk

Langkah 2: Mengendalikan Pendua

Apabila entri pendua ditemui semasa pemasukan, tindakan yang sesuai boleh ditentukan berdasarkan keperluan khusus:

  • Abaikan Pendua: Menggunakan Penyataan INSERT IGNORE membenarkan proses pemasukan diteruskan tanpa memasukkan rekod pendua.
INSERT IGNORE INTO thetable (pageid, name) VALUES (1, "foo"), (1, "foo");
Salin selepas log masuk
  • Timpa Rekod Sedia Ada: Ini boleh dicapai menggunakan INSERT.. .ON penyataan KEMASKINI KUNCI DUA, yang mengemas kini lajur tertentu ditentukan sekiranya kunci pendua adalah dihadapi.
INSERT INTO thetable (pageid, name, somefield)
VALUES (1, "foo", "first")
ON DUPLICATE KEY UPDATE (somefield = 'first')

INSERT INTO thetable (pageid, name, somefield)
VALUES (1, "foo", "second")
ON DUPLICATE KEY UPDATE (somefield = 'second')
Salin selepas log masuk
  • Kemas kini Kaunter: Jika rekod pendua dianggap kejadian berasingan, lajur pembilang boleh ditambah menggunakan sintaks ON DUPLICATE KEY UPDATE .
INSERT INTO thetable (pageid, name)
VALUES (1, "foo"), (1, "foo")
ON DUPLICATE KEY UPDATE (pagecount = pagecount + 1)
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Mencegah Penyelitan Data Duplikat dalam MySQL Menggunakan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan