Możesz użyć WSTAW... IGNORUJ składnia, jeśli nie chcesz podejmować żadnych działań, gdy istnieje zduplikowany rekord.
Możesz użyć ZAMIEŃ NA składnia, jeśli chcesz zastąpić stary rekord nowym z tym samym kluczem.
Możesz też użyć WSTAW... NA DUPLIKACJI KLUCZ AKTUALIZACJA składnia, jeśli chcesz zamiast tego zaktualizować rekord, gdy napotkasz duplikat.
Edycja:pomyślałem, że dodam kilka przykładów.
Przykłady
Załóżmy, że masz tabelę o nazwie tbl
z dwiema kolumnami, id
i value
. Jest jeden wpis, id=1 i value=1. Jeśli uruchomisz następujące stwierdzenia:
REPLACE INTO tbl VALUES(1,50);
Nadal masz jeden rekord, z id=1 wartość=50. Zauważ, że cały rekord został najpierw USUNIĘTY, a następnie ponownie wstawiony. Następnie:
INSERT IGNORE INTO tbl VALUES (1,10);
Operacja została wykonana pomyślnie, ale nic nie zostało wstawione. Nadal masz id=1 i value=50. Wreszcie:
INSERT INTO tbl VALUES (1,200) ON DUPLICATE KEY UPDATE value=200;
Masz teraz pojedynczy rekord o id=1 i value=200.