MySQL -change DB, Tabellen utf8
Frage
In /etc/my.cnf the following has been added
character-set-server=utf8
collation-server=utf8_general_ci
Aber für die Datenbank und Tabellen erstellt vor dem Hinzufügen der oben, wie die Datenbank zu konvertieren und Tabellen utf8 mit Sortierungseinstellungen
Lösung
Nun, der Datenbank-Zeichensatz und Tabellenzeichensatz sind nur Standardwerte (sie haben keinen Einfluss auf irgendetwas direkt). Sie müssten jede Spalte auf die richtige charset ändern. PHPMyAdmin wird dies für Sie tun (nur die Spalte bearbeiten, dann den Zeichensatz ändern). Wenn Sie rohe SQL tun wollen, müssen Sie die Spaltendefinition wissen (SHOW CREATE TABLE foo
Sie die Definition zeigen). Dann können Sie verwenden ALTER TABLE
die Definition zu ändern .
Um das Standard-charset für eine Tabelle zu ändern:
ALTER TABLE `tablename` DEFAULT CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';
Um die charset einer Spalte mit der Definition zu ändern foo VARCHAR (128) CHARACTER SET 'foo' COLLATE ‚foo'``:
ALTER TABLE `tablename` MODIFY
`foo` VARCHAR(128) CHARACTER SET 'utf8' COLLATE 'utf8_general_ci';