SQLSTATE[HY000]: General error: 1267 Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8mb4_unicode_ci,COERCIBLE) for operation 'like' 。。。


SQLSTATE[HY000]: General error: 1267 Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8mb4_unicode_ci,COERCIBLE) for operation 'like' 

這個問題是說:查詢的表字符集與當前鏈接DB設置的字符集不一致

發現問題


① 檢查鏈接DB設置的字符集
  ‘mysql’ => [

            ‘driver’    => ‘mysql’,

            ‘host’      => env(‘DB_HOST’, ‘localhost’),

            ‘database’  => env(‘DB_DATABASE’, ‘forge’),

            ‘username’  => env(‘DB_USERNAME’, ‘forge’),

            ‘password’  => env(‘DB_PASSWORD’, ”),

            ‘charset’ => ‘utf8mb4’,

            ‘collation’ => ‘utf8mb4_unicode_ci’,

            ‘prefix’    => ”,

            ‘strict’    => false,

        ],

  ②   查看查詢表及字段的字符集

mysql > SHOW CREATE TABLE table_name;

        OR 或者

mysql > SHOW  FULL Columns  FROM  table_name;

  ③  比對鏈接庫設置的字符集 與 表及字段 的字符集是否一致

 

問題解決方案:

①更改鏈接庫字符集

②更改庫、表及字段字符集

mysql > ALTER TABLE table_name MODIFY <字段><類型> CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

 

 

 

 

 

 

 

 

 

歲月不長,不要期待來日方長

 


免責聲明!

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



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