產生一個錯誤訊息:
Illegal mix of collations for operation 'UNION'
這是甚麼啊?
兩個 Sql statement 分別查詢都OK啊?! 為什麼 Union起來
就有問題呢?
上網查詢一下, 在這裡找到答案, 感謝這位仁兄的解釋,
原來我兩個 table 的校對設定不同,
一個是 utf8_general_ci, 而另一個是 utf8_unicode_ci.
兩個union在一起做查詢, 就會產生 Illegal mix of collations for
operation 'UNION'的訊息了.
這樣解法就簡單囉...就把兩個設定為一樣就好了!
同時, 在程式內連線完成資料庫連線後, 加上
mysql_query('SET NAMES big5');
mysql_query('SET CHARACTER SET big5');
mysql_query('SET collation_connection = utf8_unicode_ci');
就解決了.
感謝這完美的發現!
沒有留言:
張貼留言