MySQL: ALTER IGNORE TABLE löst trotz Dokumentation eine „Integrity Constraint Violation“ aus
In der MySQL-Dokumentation heißt es eindeutig, dass die Verwendung von ALTER IGNORE TABLE in Kombination erfolgt mit einem EINZIGARTIGEN SCHLÜSSEL sollte das Entfernen von Duplikaten ermöglichen, indem etwaige Fehler bei doppelten Schlüsseln überschrieben werden. In der Praxis sind Benutzer jedoch auf die anhaltende Fehlermeldung „#1062 – Doppelter Eintrag ‚blabla‘ für Schlüssel ‚dupidx‘“ gestoßen.
Dieses Verhalten scheint durch einen Fehler in der InnoDB-Version von MySQL verursacht zu werden bestimmte Versionen. Insbesondere funktioniert die IGNORE-Schlüsselworterweiterung im InnoDB-Kontext nicht wie erwartet.
Lösung:
Um dieses Problem zu umgehen, können Benutzer die folgende Problemumgehung anwenden:
Hinweis: Wenn die Tabelle Fremdschlüsseleinschränkungen enthält, entfernen Sie diese und fügen Sie sie erneut hinzu wird notwendig sein, um die Datenintegrität sicherzustellen.
Das obige ist der detaillierte Inhalt vonWarum löst ALTER IGNORE TABLE in MySQL immer noch den Fehler „Doppelter Eintrag' aus?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!