Voilà ma table avec quelques exemples de donnéesMySQL INSERT IGNORE ne fonctionne pas
a_id | b_id
------------
1 225
2 494
3 589
Quand je lance cette requête
INSERT IGNORE INTO table_name (a_id, b_id) VALUES ('4', '230') ('2', '494')
Il insère ces deux lignes quand il est censé ignorer la seconde paire de valeurs (2, 494)
Aucun index défini, aucune de ces colonnes n'est primaire.
Qu'est-ce que je ne connais pas?
Hmm ... alors comment ignorer une ligne dupliquée sans avoir besoin d'une clé primaire? Et je ne veux pas définir une colonne particulière comme unique. Je veux que la combinaison des deux colonnes soit unique. Par exemple, il peut y avoir une ligne (3, 589) et une ligne (3, 330) mais il ne peut y en avoir deux (3, 589) s – HyderA
Vous devez utiliser une contrainte unique multi-colonne. Exemple déjà fourni par paxdiablo. Cela répondra à vos besoins.Vous DEVEZ avoir une contrainte unique si vous voulez que MySQL gère votre requête IGNORE. – Fenton