MySQL: ALTER IGNORE TABLE ADD UNIQUE – Auswirkungen auf die Kürzung aufzeichnen
Eine ALTER TABLE-Anweisung mit der IGNORE-Klausel wird verwendet, um eine Eindeutigkeitsbeschränkung hinzuzufügen zu einer Tabelle hinzufügen, wodurch möglicherweise doppelte Datensätze entfernt werden. Allerdings können die spezifischen gespeicherten Datensätze Fragen aufwerfen.
Frage:
Beim Ausführen der folgenden Anweisung:
ALTER IGNORE TABLE `my_table` ADD UNIQUE (`type`, `owner`);
Welcher Datensatz bleibt erhalten, wenn mehrere doppelte Datensätze mit demselben Typ und denselben Besitzerwerten vorhanden sind?
Antwort:
Ab MySQL 5.7.4 gibt es die IGNORE-Klausel nicht mehr unterstützt und seine Verwendung führt zu einem Fehler.
Allerdings gilt in früheren Versionen von MySQL, die die IGNORE-Klausel zulassen:
Laut der MySQL-Dokumentation bezieht sich „zuerst“ wahrscheinlich auf den Datensatz mit dem niedrigsten Primärschlüsselwert. In Ihrem Fall wird unter der Annahme, dass die ID-Spalte der Primärschlüssel ist, der Datensatz mit der kleinsten ID beibehalten.
Das obige ist der detaillierte Inhalt vonWelcher Datensatz bleibt erhalten, wenn „ALTER IGNORE TABLE ADD UNIQUE' in MySQL verwendet wird?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!