Ein eindeutiger Index in MySQL muss sich nicht auf einer einzelnen Spalte befinden. Sie können einen UNIQUE-Index für mehrere Spalten hinzufügen, indem Sie einfach mehr Spalten in Ihrem ALTER TABLE..ADD UNIQUE
angeben Aussage:
ALTER TABLE myTable ADD UNIQUE (
mykey,
myfoo
);
Jetzt können Sie einen normalen INSERT INTO...ON DUPLICATE KEY
verwenden Aussage.
SQLFiddle-DEMO (Beachten Sie, dass die mehrfach wiederholten Werte nicht hinzugefügt werden – alle anderen werden )
Hinweis :
Wenn eines NULL ist, wird es nicht als einmalig gelten. mykey
B. 'bar' und myfoo
NULL zu sein, könnte zu unendlich hinzugefügt werden, obwohl sie die "gleichen" Werte haben (NULL ist nicht wirklich ein Wert).