Tabelle kann nicht mit TYPE=MYISAM erstellt werden
Beim Versuch, eine Tabelle mit der alten TYPE-Syntax zu erstellen, wie zum Beispiel:
CREATE TABLE dave_bannedwords( id INT( 11 ) NOT NULL AUTO_INCREMENT , word VARCHAR( 60 ) NOT NULL DEFAULT '', PRIMARY KEY ( id ) , KEY id( id ) ) TYPE = MYISAM ;
Möglicherweise tritt ein Fehler auf wie:
1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'TYPE=MyISAM' at line 6
Lösung
Wie in der MySQL-Dokumentation für CREATE TABLE-Syntax angegeben:
"Die ältere TYPE-Option war gleichbedeutend mit ENGINE TYPE wurde in MySQL 4.0 veraltet und in MySQL 5.5 entfernt. Beim Upgrade auf MySQL 5.5 oder höher müssen Sie Konvertieren Sie vorhandene Anwendungen, die auf TYPE angewiesen sind, so, dass sie stattdessen ENGINE verwenden.
Ersetzen Sie daher TYPE durch ENGINE, um die Tabelle erfolgreich zu erstellen:
CREATE TABLE dave_bannedwords( id INT(11) NOT NULL AUTO_INCREMENT, word VARCHAR(60) NOT NULL DEFAULT '', PRIMARY KEY (id), KEY id(id) -- this is superfluous in the presence of your PK, ergo unnecessary ) ENGINE = MyISAM ;
Das obige ist der detaillierte Inhalt vonWarum schlägt die Erstellung einer MyISAM-Tabelle mit TYPE=MYISAM in MySQL 5.5 fehl?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!