iT邦幫忙

1

mysql view 欄位 utf8_general_ci轉utf8_unicode_ci

  • 分享至 

  • xImage

下SQL查view把某兩欄做為WHERE條件的時候出現下方這段文字
#1267 - Illegal mix of collations (utf8_general_ci,COERCIBLE) and (utf8_unicode_ci,COERCIBLE) for operation '='
我想應該是下條件欄位的collations不一致的關係
(我不下WHERE條件就不會出錯@@)

目前資料庫跟表單都預設為utf8_unicode_ci

但我拉出來的view其中有兩個欄位(假設為X、Y)卻是utf8_general_ci

這兩欄(X、Y)並非是其他資料表實際存在的值

而是計算出來的

例如:
table_A的日期欄 - 今天 <= 0 則view中的X欄為"逾期"
table_B的日期欄 - 今天 <= 0 則view中的Y欄為"逾期"

請問我可以怎麼修改view的collations ?
將utf8_general_ci改為utf8_unicode_ci

再麻煩各位解惑

謝謝!

Neish iT邦研究生 1 級 ‧ 2017-11-07 11:30:06 檢舉
找到這篇 Solution 4 終於解決了...
http://www.javaquery.com/2014/04/error-code-1267-illegal-mix-of.html
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友回答

立即登入回答