java.sql.SQLException: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=' 異常處理,及MySQL數據庫編碼設置


java.sql.SQLException: Illegal mix of collations (latin1_swedish_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE) for operation '=',意思是說字符編碼不一樣,不能進行比較,也就是說數據庫內部的編碼都不一樣,有的數據是latin1_swedish_ci,有的數據是utf8_general_ci,,因此解決此問題的核心就是將數據庫所有的編碼進行統一。

1、查看數據庫編碼,使用sql語句:show variables like 'character_set_%';

正確的如下圖:

如果編碼不對,可使用以下sql語句進行修改:

set character_set_client=utf8;

set character_set_connection=utf8;

set character_set_database=utf8;

set character_set_results=utf8;

set character_set_server=utf8;

set character_set_system=utf8;

 

2、查看排序規則,使用sql語句:show variables like 'collation_%';

正確的如下圖:

如果不對,可使用以下sql語句進行修改:

set collation_connection=utf8;


set collation_database=utf8;


set collation_server=utf8;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM