Siddartha Posté 14 Janvier 2005 Posté 14 Janvier 2005 Bonjour, J'ai un problème avec les jeux de caractères et suite à une install du serveur mysql avec les collations. Je ne comprends pas quel jeu de caractère utilisé pour installer un jeu de caractère français par défaut que ce soit de l'ISO-8859-1 ou de l'utf-8 amélioré. 1270 - Illegal mix of collations (utf8_general_ci,IMPLICIT), (latin1_swedish_ci,COERCIBLE), (latin1_swedish_ci,COERCIBLE) for operation 'replace' J'ai eu cette erreur suite à une installation dotclear ou il semble y avoir un conflit avec le jeu latin1_swedish (qui est là car un admin furieux l'a paramétré pour perfectionner son suédois - il se reconnaître -) Est ce que l'utf8_general_ci suffirait ? Merci pour vos réponses.
Anonymus Posté 14 Janvier 2005 Posté 14 Janvier 2005 L'UTF8 et l'ISO n'utilisent pas le même système d'encodage des caractères. En gros, l'un le stocke sur 1 caractère, alors que l'autre le stocke sur 2 (ou 3) caractères. L'intérèt ? L'ISO 88591 sait exactement quel caractère tu vas lui entrer, alors que l'UTF ne le sait pas, et est donc obligé de stocker 'la norme' avec lui. Exemple : Pour un 'é', le ISO va stocker 'é' alors que UTF va stocker (8859-1)é, pour ne pas le confondre avec un caractère chinois ou hébreux, etc.. Quand tu récupères la table, il faut que le programme sache si c'est du UTF ou de l'ISO. Mais il faut surtout que les 2 normes ne soient pas mélangées, car il y aurait conflit. Pour cela, le mieux est de vider ta table en question, et de stocker l'un (ou l'autre). Nico.
Cariboo Posté 14 Janvier 2005 Posté 14 Janvier 2005 Pour info, latin1_swedish_ci n'est pas une "table de caractères", mais un nom de collation. Un jeu de caractères a au moins une collation par défaut. Pour la table iso-8559-1, la collation par défaut est ... latin1_swedish_ci Ces tables de collation servent à la comparaison des chaînes... Elles sont apparues dans Mysql 4.1
Dan Posté 14 Janvier 2005 Posté 14 Janvier 2005 J'ai eu le même type de désagrément, en passant mon PC a mySql 4.1. Jusqu'au moment où j'ai compris qu'il fallait déterminer le jeu de caractères lors de la création de la base. Depuis, je n'ai plus eu de problème. Dan
Siddartha Posté 14 Janvier 2005 Auteur Posté 14 Janvier 2005 Pour la table iso-8559-1, la collation par défaut est ... latin1_swedish_ci Moi qui croyait que c'était un caprice de notre admin passionné .. Bon, pour l'install de dotclear, la solution est sur leur forum à cette url : http://www.dotclear.net/forum/viewtopic.php?id=6866 Je vais aller essayer tout çà, Mysql 4.1, ca a quand même l'air d'être un beau bordel, vivement la prochaine release Merci à tous pour vos réponses.
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant