執行sql語句正常
執行存儲過程 異常
提示
Illegal mix of collations (utf8_general_ci,IMPLICIT) and (utf8_unicode_ci,IMPLICIT) for operation '='
解決辦法
CREATE PROCEDURE `proce_test`(admin_name VARCHAR(32) charset utf8)
問題描述:MySQL進行字符串比較時發生錯誤:
錯誤如下:
解決方法:將比較等式一邊進行字符串轉換,如改為“CONVERT(b.fullCode USING utf8) COLLATE utf8_unicode_ci”
SELECT a.equ_no, b.fullCode FROM equipment a, ( SELECT t.*, getEquTypeFullCode (t.equType_id) AS fullCode FROM equ_type t ) b WHERE substring(a.equ_no, 1, 5) = CONVERT(b.fullCode USING utf8) COLLATE utf8_unicode_ci;
