Une surprise sur une de mes bases de test.
Elle n'est pas en "URF8 general ci" ! Ceci après avoir des accents qui ont joué les filles en l'air.
Je regarde de plus prêt. Je démonte doctrine 2. La création d'une base et... non, pas de paramètres possible pour préciser le charset lors de la création, par doctrine, de la base. Il utilise, pour MySql un "CREATE DATABASE xxxxx" tout simple (cf méthode getCreateDatabaseSQL() de la classe Doctrine\DBAL\Platforms\MySqlPlatform() )
Pas non plus de paramètre dans l'annotation pour spécifier le charset d'une table. Par contre, dans le code, pour la création d'une table, il y a bien dans la méthode _getCreateTableSQL un charset dans les options avec une valeur par défaut : utf8. Sauvé ? Non ! Il créer les tables en latin1_swedich_ci (swedich !) (possible que cela soit un paramètre par défaut dans MySql).
Le code fait une obscure recherche d'un paramètre par défaut pour la valeur du charset, mais je n'ai pas encore pu pister l'origine du paramètre.
Déjà rencontré cela ?
Une solution ?
Je prends !!!
Partager