Behebung des Fehlercodes 1118: Zeilengröße überschreitet den Grenzwert in MySQL
Das Auftreten des Fehlercodes 1118 in MySQL weist darauf hin, dass die Größe einer Zeile den überschreitet zulässige Grenze von 8126 Bytes. Dieses Problem tritt häufig beim Erstellen umfangreicher Tabellen mit zahlreichen Spalten auf.
Um diesen Fehler zu beheben, sollten Sie die Implementierung der folgenden Lösungen in Betracht ziehen:
Spaltentypen optimieren:
In Ihrem Schema haben Sie einige Spalten als CHAR(1) deklariert, was eine Zeichenbeschränkung von nur einem Zeichen impliziert. Der Ersatz dieser Spalten durch TEXT- oder BLOB-Spalten würde deren Kapazität erheblich erhöhen. Vermeiden Sie außerdem die Verwendung von LONG-Spalten.
Barracuda-Dateiformat aktivieren:
Das Barracuda-Dateiformat von MySQL verbessert die Leistung und ermöglicht größere Zeilengrößen. Um es zu aktivieren, fügen Sie die folgenden Attribute zu Ihrer MySQL-Konfigurationsdatei (my.ini) hinzu:
innodb_file_per_table=1 innodb_file_format=Barracuda innodb_file_format_check = ON
Innodb_strict_mode anpassen:
Wenn die vorherigen Maßnahmen keinen Erfolg bringen Versuchen Sie, den Parameter innodb_strict_mode auf 0 zu ändern. Diese Einstellung lockert die Überprüfung der Zeilengröße und ermöglicht das Einfügen von Datensätzen, auch wenn ihre Größe die angegebene Größe überschreitet limit:
innodb_strict_mode = 0
Wie Sie in Ihrer Abfrage erwähnt haben, beachten Sie, dass Sie die Struktur der Tabelle aufgrund älterer Einschränkungen nicht ändern können. Erkunden Sie daher die oben genannten Lösungen und ermitteln Sie den am besten geeigneten Ansatz für Ihre spezifische Anwendung.
Das obige ist der detaillierte Inhalt vonSo beheben Sie den MySQL-Fehlercode 1118: Zeilengröße zu groß?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!