Kategorien
Programmierung

Incorrect integer value bei Autoincrement-Feldern

Meldet MySQL nach einem Update auf Version 5 plötzlich jede Menge „Incorrect integer value“s in den Autoincrement-Feldern, dann versucht ein Programm mit an Sicherheit grenzender Wahrscheinlichkeit gerade, eben diese Felder mit leeren Strings zu füttern.

Bis einschließlich Version 4 wurde hier der String stillschweigend durch den jeweiligen Autoincrement-Wert ersetzt, ein Verhalten, das mit Version 5 durch das standardmäßige Einschalten des „STRICT“-Modus geändert wurde.

Wer „quick and dirty“ gerne wieder seine Ruhe hätte, kann einfach ein

set sql_mode = '';

absetzen. Wer stattdessen lieber auf Fehlersuche gehen will, dem sei der ‚TRADITIONAL‘-Mode empfohlen, der im obigen Fall dann Fehler statt Warnungen ausspuckt.

Nächere Infos zu den verschiedenen SQL-Modi gibt es in der MySQL Dokumentation.

Kommentar schreiben