Illegal mix of collations MySQL Error

902    Asked by indhumathiJhadav in SQL Server , Asked on Jun 21, 2021

I'm getting this strange error “illegal mix of collations” while processing a large number of data...

Error Number: 1267
Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '='
SELECT COUNT(*) as num from keywords WHERE campaignId='12' AND LCASE(keyword)='hello again 昔 ã‹ã‚‰ ã‚ã‚‹ å ´æ‰€'

What can I do to resolve this? Can I escape the string somehow so this error wouldn't occur or do I need to change my table encoding somehow, and if so, what should I change it to?

Answered by Federico Fyock

Set the collations MySQL like this:

SET collation_connection = 'utf8_general_ci';

For your databases, you can use the below code:

ALTER DATABASE your_database_name CHARACTER SET utf8 COLLATE utf8_general_ci;

ALTER TABLE your_table_name CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci;

Using this code you will not get this error.



Your Answer

Interviews

Parent Categories