MySQL Upsert und Auto-Inkrement verursacht Lücken

Ich habe eine MySql-Tabelle mit einem Auto-Increment-Primärschlüssel und es scheint, dass alle verschiedenen Upsert-Methoden (INSERT IGNORE und ON DUPLICATE KEY UPDATE) unter der Eigenschaft leiden, dass das Auto-Increment-Feld inkrementiert, auch wenn eine Zeile aktualisiert und nicht eingefügt wird. Dies bedeutet, dass Lücken in die Tabelle eingefügt werden, die ich unerwünscht finde.

So lautet die Frage: Gibt es eine Möglichkeit, Datensätze in einer Tabelle mit einem Auto-Inkrement-Feld auf den Kopf zu stellen?ohn Auto-Inkrementierung dieses Felds, wenn der Upsert tatsächlich nur die Zeile aktualisiert. Meiner Meinung nach sollte sich Upsert so verhalten, aber es scheint nicht so.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage