MySQL-Datenkürzung und Fehlerbehandlung
In MySQL kann die Verarbeitung von Daten, die die Spaltenlängenbeschränkungen überschreiten, von Instanz zu Instanz unterschiedlich sein. In einigen Fällen werden überschüssige Daten abgeschnitten, ohne dass Fehler generiert werden, während in anderen Fällen ein Fehler auftritt. Diese Frage untersucht die MySQL-Einstellung, die das Abschneiden von Daten in bestimmten Szenarien ermöglicht.
Problemstellung:
Zwei MySQL-Instanzen zeigen ein unterschiedliches Verhalten beim Einfügen von Daten, die die zulässige Länge überschreiten: Einer schneidet die Daten ab, während der andere einen Fehler auslöst. Die Frage sucht nach einer Lösung, um die fehlerhafte Instanz so zu ändern, dass auch die Daten abgeschnitten werden.
Lösung:
Um das automatische Abschneiden langer Zeichenfolgen beim Einfügen von Daten zu ermöglichen, bietet MySQL an die folgenden Einstellungen:
Durch Deaktivieren dieser Einstellungen kann MySQL eingefügte Zeichenfolgen automatisch abschneiden und so den Verhaltensunterschied zwischen den beiden Instanzen beheben.
Auszug aus der MySQL-Dokumentation:
„Der strenge Modus steuert, wie MySQL mit ungültigen oder fehlenden Werten in Datenänderungsanweisungen wie INSERT oder UPDATE umgeht … Ein Wert kann aus mehreren Gründen ungültig sein. Beispielsweise könnte er den falschen Datentyp für die Spalte haben oder … außerhalb des gültigen Bereichs liegen. Ein Wert fehlt, wenn eine neu einzufügende Zeile keinen Wert für eine Nicht-NULL-Spalte enthält, deren Definition keine explizite DEFAULT-Klausel enthält 🎜>
[MySQL Server SQL-Modi](https://dev.mysql.com/doc/refman/8.0/en/sql-mode.html)
Das obige ist der detaillierte Inhalt vonWie aktiviere ich die Datenkürzung in MySQL, ohne Fehler zu generieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!