Een unieke index in MySQL hoeft niet op één kolom te staan. U kunt een UNIEKE index aan meerdere kolommen toevoegen door simpelweg meer kolommen op te geven in uw ALTER TABLE..ADD UNIQUE
verklaring:
ALTER TABLE myTable ADD UNIQUE (
mykey,
myfoo
);
Nu kunt u een gewone INSERT INTO...ON DUPLICATE KEY
. gebruiken verklaring.
SQLFiddle DEMO (merk op dat de meerdere herhaalde waarden niet worden toegevoegd - alle andere zijn )
Opmerking :
Als een van beide NULL is, zal het niet als uniek te beschouwen. mykey
zijnde 'bar' en myfoo
NULL zijn kan tot oneindig worden opgeteld, ook al hebben ze "dezelfde" waarden (NULL is niet echt een waarde).