K tomu dojde, pokud tabulka obsahuje existující záznam s id 0 (nebo záporné). Aktualizace všech existujících záznamů tak, aby používaly kladné hodnoty, umožní nastavit v tomto sloupci auto_increment.
Edit:Někteří lidé se ptali, jak se tam ta 0 dostala. Pro upřesnění, MySQL Reference Manual uvádí, že "Pro číselné typy je výchozí hodnota 0, s výjimkou, že pro celočíselné typy nebo typy s plovoucí desetinnou čárkou deklarované s atributem AUTO_INCREMENT je výchozí hodnotou další hodnota v pořadí." Pokud jste tedy provedli vložení do tabulky bez zadání hodnoty pro číselný sloupec před povolením auto_increment, pak by se během vkládání použila výchozí 0. Další podrobnosti lze nalézt na https://dev .mysql.com/doc/refman/5.0/en/data-type-defaults.html .