校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Mysql 字符集不一致導致連表異常的解決

Mysql 字符集不一致導致連表異常的解決

熱門標簽:拉卡拉外呼系統 高清地圖標注道路 臨清電話機器人 400電話可以辦理嗎 智能外呼系統復位 外東北地圖標注 話務外呼系統怎么樣 大眾點評星級酒店地圖標注 云南電商智能外呼系統價格

做一個簡單的如下的連表查詢,居然直接提示錯誤,居然是字符集不一致的問題,本文記錄一下mysql的字符集類型,以及下面這個問題的解決方案

select a.id, b.id from tt as a, t2 as b where a.xx = b.xx

-- Illegal mix of collations (utf8mb4_unicode_ci,IMPLICIT) and (utf8mb4_general_ci,IMPLICIT) for operation '='

1. 解決方法

先來看上面這個問題的解決方法,最容易想到的就是統一兩張表的字符集,要么都是utf8mb4_general_ci,要么就都是utf8mb4_unicode_ci,統一一下這個問題就自然解決了
如果我不想修改表的字符集呢?畢竟生產環境下,做這種操作還是有風險的,下面是一種不太優雅的解決方法

在字段后面指定字符集(可以全部都指定為utf8mb4_general_ci 當然也可以全部指定為 utf8mb4_unicode_ci, 根據實際需要進行處理即可)

select a.id, b.id from tt as a, t2 as b where a.xx = b.xx collate utf8mb4_general_ci

2. mysql字符集

字符集

對于國內的小伙伴,一般而言我們常見的字符集有下面三種

  • gbk: 兩字節
  • utf8: 三個字節
  • utf8mb4: 四個字節

而mysql實際支持的就比較多了,可以通過show charset;進行查詢

校驗規則

在實際的case中,經常會看到下面幾種

  • utf8_bin
  • utf8mb4_unicode_ci
  • utf8mb4_general_ci
  • latin1_general_cs

當然我們也可以通過 show collation;查看所支持的校驗規則

請注意上面的寫法

  • ci: case insensitive的縮寫 大小寫不敏感
  • cs: case sensitive 大小寫敏感
  • bin: 二進制存儲,大小寫敏感

到此這篇關于Mysql 字符集不一致導致連表異常的解決的文章就介紹到這了,更多相關Mysql 字符集連表異常內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • MySql表、字段、庫的字符集修改及查看方法
  • mysql字符集和校對規則(Mysql校對集)
  • mysql修改數據庫編碼(數據庫字符集)和表的字符編碼的方法
  • 深入Mysql字符集設置分析
  • 修改mysql默認字符集的兩種方法詳細解析
  • Mysql5 字符集編碼問題解決

標簽:阿里 溫州 無錫 福州 三明 定西 山西 揚州

巨人網絡通訊聲明:本文標題《Mysql 字符集不一致導致連表異常的解決》,本文關鍵詞  Mysql,字符集,不一致,導致,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Mysql 字符集不一致導致連表異常的解決》相關的同類信息!
  • 本頁收集關于Mysql 字符集不一致導致連表異常的解決的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 闵行区| 安图县| 呼图壁县| 泰来县| 辉南县| 定边县| 冷水江市| 和田市| 南涧| 惠东县| 平远县| 贵南县| 永昌县| 凤冈县| 泌阳县| 天气| 九龙城区| 双城市| 尤溪县| 眉山市| 于都县| 且末县| 响水县| 新密市| 贺州市| 澄江县| 安康市| 全州县| 赤城县| 和林格尔县| 泾源县| 阳新县| 银川市| 安乡县| 丰台区| 当雄县| 临沂市| 米泉市| 富平县| 林州市| 新兴县|