2013-05-14 134 views
1

時Iv'e一直試圖從我的表Concat的兩列,執行像他們PHP的MySQL - 排序規則的非法使用混合CONCAT

下面是MySQL查詢:

SELECT * FROM stops WHERE CONCAT_WS(name, ' ', desc) LIKE 
'%This%' AND CONCAT_WS(name, ' ', desc) LIKE '%is%' AND 
CONCAT_WS(name, ' ', desc) LIKE '%a%' 
AND CONCAT_WS(name, ' ', desc) LIKE '%test%' 

當我

Illegal mix of collations (utf8_bin,NONE) and 
(utf8_general_ci,COERCIBLE) for operation 'like' 

Iv'e被檢查有關此主題類似的問題,看到了很多 答案告訴T:通過我的PHP代碼或phpMyAdmin的我碰到下面的錯誤運行o更改數據庫的排序規則。

我已經改變了所有的數據庫,表和字段collcation到utf8_general_ci

當我運行相同的查詢正好在Navicat它工作得很好。

我在這裏錯過了什麼嗎?

謝謝!

+0

它的問題是,'CONCAT_WS'沒有分隔第一? – MikeB 2013-05-14 01:29:43

回答

2

設置數據庫和表 - >characterutf8

ALTER DATABASE db CHARACTER SET utf8 COLLATE utf8_general_ci 

ALTER TABLE table CONVERT TO CHARACTER SET utf8 COLLATE utf8_general_ci 
+0

這是問題所在。但我確定排序規則已經是utf8_general_ci。沒關係,謝謝! – alon7 2013-05-14 15:16:17

相關問題