Die Lösung ist ganz einfach, die 2147483647 ist der maximale Wert einer int-Variablen in MySQL (231 − 1). Wenn versucht wird in eine int-Spalte einen größeren Wert zu schreiben, so speichert MySQL immer dieses Wert ab, anstelle des gewünschten, größeren Wertes. Dann sollte man den Datentyp bigint nehmen, der Zahlen bis 9223372036854775807
zulässt (signed) oder auf unsigned (nur positive Werte, reicht bis 4294967295) umstellen.
Kategorien