Quelle stratégie pour résoudre une erreur Illegal mix of collations (UTF8MB4_UNICODE_CI, COERCIBLE) ?
bonjour,
j'ai une erreur de type "Illegal mix of collations (utf8mb4_unicode_ci,COERCIBLE)" c-a-d un problème de mixité de codage de champs.
C'est la 1ere fois que je vois le terme COERCIBLE, ça m'intrigue ça....
sachant que ma requête est compliquée (une 30aines de UNION), y-a-t-il un moyen de cibler juste le tuple qui contient une valeur de champs non compatible ?
Ma relation est une vue de type :
select c1 as qui, c2 as evenement from table 1
union
select d1 as qui, d2 as evenement from table 2
union
select e1 as qui, e2 as evenement from table 3
..etc
à moins de rejouer au chat à la souris en enlevant une à une chaque table et tester, je voudrais bien trouver une autre solution plus directe pour résoudre ce souci !
une idée ?
quand je simplifie ma requête à :
Code:
SELECT * FROM `timeline` WHERE evenement like "%ric"
,
j'ai l'erreur, mais quand je la simplifie autrement :
Code:
SELECT * FROM `timeline` WHERE qui like "%ric"
,
je n'ai pas l'erreur.
ma conclusion c'est que l'un des champs que j'ai renommé en 'evenement" a un problème de codage. je me trompe ? mais lequel parmi celui des 30 tables en UNION dans la vue.... mystère!