Home > Database > Mysql Tutorial > How to Fix the 'Illegal mix of collations' Error in MySQL?

How to Fix the 'Illegal mix of collations' Error in MySQL?

Susan Sarandon
Release: 2024-12-13 06:14:13
Original
902 people have browsed it

How to Fix the

Resolving the "Illegal mix of collations" Error in MySQL

When attempting to execute a MySQL stored procedure involving a SELECT statement, you may encounter the error "Illegal mix of collations." This issue arises due to discrepancies in the collation of the table and the columns being compared or sorted.

The table's collation is latin1_general_ci, while the column in the WHERE clause uses latin1_general_cs. These incompatible collations result in the error.

Solution 1: Specify Shared Collation using the COLLATE Clause

Use the COLLATE clause to specify a common collation for the columns in the query:

WHERE column1 COLLATE latin1_general_ci = column2 COLLATE latin1_general_ci
Copy after login

Solution 2: Employ the BINARY Operator

Alternatively, you can utilize the BINARY operator, which treats strings as binary data:

WHERE BINARY column1 = BINARY column2
Copy after login

Note:

When using the BINARY operator, keep in mind that it disables any potential indexing on the column in question.

For comprehensive information on collation-related topics, refer to the highly insightful response provided by eggyal in a similar discussion.

The above is the detailed content of How to Fix the 'Illegal mix of collations' Error in MySQL?. For more information, please follow other related articles on the PHP Chinese website!

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Articles by Author
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template