Lösung für den 1071-Fehler in MySQL: Dieses Problem wird dadurch verursacht, dass die Länge des Schlüsselwertfelds zu lang ist. MySQL unterstützt die maximale Länge eines einzelnen Schlüsselwerts in der Datenbanktabelle, wenn Sie die Länge auf 255 ändern , wird es kein Problem geben, oder es wird kein Problem bei der Verwendung des UTF-8-Formats geben.
Lösung für den 1071-Fehler in MySQL:
Dieses Problem wird dadurch verursacht, dass die Länge des Schlüsselwertfelds zu lang ist. MySQL unterstützt, dass die maximale Länge eines einzelnen Schlüsselwerts in einem Datenbankformular 767 Bytes nicht überschreiten darf. Wenn diese Länge überschritten wird, wird ein Fehler gemeldet (siehe Titelname). Normalerweise überschreitet kein Schlüsselwertfeld diese Länge. Es ist jedoch zu beachten, dass mit der Beschleunigung der Globalisierung der Trend, dass Datenbanktabellen das UTF-8-Format übernehmen, immer offensichtlicher wird, was dazu führt, dass sich die Länge von Feldern vom Typ Varchar verdoppelt und die oben genannten Probleme auftreten können Du bist nicht vorsichtig.表 Unter der Annahme der folgenden Tabellendefinition:
create table test ( name varchar(256) not null primary key, age int unsigned not null ) engine = InnoDB;
Wenn die Tabelle im UTF-8-Format erstellt wird, treten die im Titel gezeigten Probleme auf. Der Hauptgrund dafür ist, dass UTF-8 eine Codierung mit variabler Länge verwendet, die bis zu 3 Bytes zur Darstellung eines Symbols verwenden kann. Daher überschreitet die tatsächliche Länge des Namensfelds in der obigen Tabelle 767 Byte und erreicht 768 Byte, und es tritt ein Problem auf. Wenn Sie die Länge auf 255 (767/3) ändern, entsteht kein Problem, oder wenn Sie das UTF-8-Format nicht verwenden, entsteht kein Problem.
Verwandte Lernempfehlungen:MySQL-Tutorial
Das obige ist der detaillierte Inhalt vonWas tun, wenn in MySQL der Fehler 1071 auftritt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!