[Symfony2 - MAMP] bdd en latin au lieu d'utf8

Ce sujet est résolu
Default
,

Bonjour à tous,

J'ai généré une entité avec la console

J'ai ensuite utilisé la commande doctrine:database:create

Il me créé bien la base de données mais en latin_swedish_1 et non en UTF-8.

Je précise que je suis sous MAMP.

Dans le book de Symfony2, il y a une commande à ajouter pour résoudre ce problème.

2 lignes à ajouter dans le fichier my.cnf

collation-server = utf8_general_ci

character-set-server = utf8

J'ai bien sûr ajouter ces 2 lignes, redémarrer mon MAMP (même mon MAC !) et la base se créé toujours en latin et non en UTF-8.

Quelqu'un aurait-il une solution à m'apporter svp ?

6 Réponse

15803
,

Salut,

Perso toutes mes bases sont en Latin et je n'ai jamais eu de problème d'encodage.

si symfony 2 est bien configuré en UTF-8 et que tes fichiers sont en UTF-8 tu n'auras aucun problème de caractères.

Default
,

Merci Yentia sujet résolu donc :)

9749
,

Juste pour info:

dans ton fichier my.cnf de mysql tu peux rajouter ces lignes:

[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci

Elles te permettront d'aavoir des BDD directement en utf8, plus besoin de gérer cela par la suite. Directement quand tu feras un CREATE DATABASE, celle ci sera sous ce format

Default
,

C'est exactement ce que j'ai dit dans mon premier message et ça ne fonctionne pas, ma base se crée en latin1

9749
,

autant pour moi j ai oublié la moitié de ce que je voulais mettre::

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8


[mysqld]
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8

sur windows cela fonctionne par contre sur mac je ne peux pas confirmer, malgré qu il ne devrais pas y avoir de différence normalement

17767
,

Bonjour, je pense que la réponse de mikachu est correct car si on regarde la documentation de mysql sur la création de database http://dev.mysql.com/doc/refman/5.0/en/charset-database.html celui ci utilise les variables defaults contenu dans mysql.