Maison >base de données >tutoriel mysql >Comment empêcher l'insertion de données en double dans MySQL à l'aide de PHP ?
Prévenir l'insertion de données en double dans la base de données MySQL
Dans un scénario où une table MySQL avec l'identifiant de colonnes, l'identifiant de page et le nom doit conserver un combinaisons de pageId et de nom, empêcher l'insertion de données en double devient cruciale. Cet article explore les meilleures pratiques pour gérer les entrées en double lors de l'insertion de données à l'aide de PHP.
Étape 1 : Créer un index unique
Pour appliquer l'unicité à la combinaison de pageId et colonnes de nom, un index peut être créé à l'aide de l'instruction SQL suivante :
ALTER TABLE thetable ADD UNIQUE INDEX(pageid, name);
Étape 2 : Gestion Doublons
Lorsqu'une entrée en double est rencontrée lors de l'insertion, l'action appropriée peut être déterminée en fonction d'exigences spécifiques :
INSERT IGNORE INTO thetable (pageid, name) VALUES (1, "foo"), (1, "foo");
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')
INSERT INTO thetable (pageid, name) VALUES (1, "foo"), (1, "foo") ON DUPLICATE KEY UPDATE (pagecount = pagecount + 1)
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!