cas particulier de DB_ERROR_1267

Bonsoir
J’aurai besoin , si c’est possible , d’une explication.
Dans ma version V10, sur une requête de l’écran ‹ Lignes à lier › dans le menu Comptabilité que ce soit pour ‹ factures Client › ou ‹ factures fournisseur ›, j’ai une erreur

DB_ERROR_1267 Illegal mix of collations (utf8_unicode_ci,IMPLICIT) and (utf8_general_ci,IMPLICIT) for operation '='
J’ai réduit la requête à ceci

SELECT * from llx_product as p LEFT JOIN llx_accounting_account as aa ON aa.account_number = p.accountancy_code_buy

Et l’erreur apparait toujours
A la lecture des questions/réponses
[url=www.dolibarr.fr/forum/t/comptabilite-avance-compte-produits/29821/1 Avancé Compte produits[/url] et [url=www.dolibarr.fr/forum/t/maj-de-8-vers-9/29117/1 de 8 vers 9 [/url], j’ai regardé mes bases de près.
Or j’ai deux bases, l’une en V8, l’autre en V10 sur le même moteur mysql5.0.45. Pour toutes deux, les tables llx_product et llx_accounting_account sont en utf8_general_ci. C’est le champ accountancy_code_buy qui est en utf8_unicode_ci.
Mais le plus étonnant, c’est qu’en V8, la requête passe.

Je ne fais pas la correction tout de suite, pour pouvoir répondre à d’éventuelles questions…
Merci d’avance
Claude

BOnjour,

Petite recherche ?
www.dolibarr.fr/forum/t/illegal-mix-of-collations-utf8-unicode-ci-implici/26923/3

1 « J'aime »

@ksar, merci pour la procédure.
Mais je ne comprends toujours pas pourquoi cela marche sur une base et pas sur l’autre.
Vu que les interclassements sont les mêmes.
Claude