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

War es hilfreich?

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';
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top