Opret et sammensat unikt indeks. Dette vil tillade et hvilket som helst antal dubletter i de individuelle felter, men kombinationen skal være unik.
CREATE UNIQUE INDEX ix_uq ON test (field1, field2, field3);
...og brug INSERT IGNORE
at indsætte, hvis det unikke indeks ikke er overtrådt. Hvis det er det, skal du bare ignorere indsættelsen.
INSERT IGNORE INTO test (field1,field2,field3) VALUES (1,1,1);
Hvis du vil indsætte, medmindre der er en dublet, og opdatere hvis der er, kan du også bruge INSERT INTO ... ON DUPLICATE KEY UPDATE
;
INSERT INTO test (field1, field2, field3) VALUES (1,1,1)
ON DUPLICATE KEY UPDATE field4=field4+1;