主頁 > 知識(shí)庫 > 基于mysql 默認(rèn)排序規(guī)則的坑

基于mysql 默認(rèn)排序規(guī)則的坑

熱門標(biāo)簽:武漢網(wǎng)絡(luò)外呼系統(tǒng)服務(wù)商 啥是企業(yè)400電話辦理 外呼系統(tǒng)打電話上限是多少 曲靖移動(dòng)外呼系統(tǒng)公司 怎樣在地圖標(biāo)注銷售區(qū)域 電話外呼系統(tǒng)改號(hào) 地圖標(biāo)注費(fèi)用是多少 百應(yīng)電話機(jī)器人優(yōu)勢 南昌三維地圖標(biāo)注

mysql默認(rèn)varchar類型是對(duì)大小寫不敏感(不區(qū)分),如果想要mysql區(qū)分大小寫需要設(shè)置排序規(guī)則:

utf8_bin將字符串中的每一個(gè)字符用二進(jìn)制數(shù)據(jù)存儲(chǔ),區(qū)分大小寫。

utf8_genera_ci不區(qū)分大小寫,ci為case insensitive的縮寫,即大小寫不敏感。

utf8_general_cs區(qū)分大小寫,cs為case sensitive的縮寫,即大小寫敏感。

用utf8_genera_ci沒有區(qū)分大小寫,導(dǎo)致這個(gè)字段的內(nèi)容區(qū)分大小寫時(shí)出問題,比如作為區(qū)分大小寫的code或者驗(yàn)證碼時(shí)就出問題了。

utf8_general_cs這個(gè)選項(xiàng)一般沒有,所以只能用utf8_bin區(qū)分大小寫。

1)設(shè)置排序規(guī)則是可逆的,如果之前設(shè)置的排序規(guī)則不符合,更換排序規(guī)則后,可能出現(xiàn)亂碼,當(dāng)再次恢復(fù)原來的排序規(guī)則后,亂碼即消失。

2)可以將varchar 類型改為 varbinary

3)如果已經(jīng)使用了默認(rèn)的排序規(guī)則,即utf8_genera_ci,而又想查詢結(jié)果大小寫區(qū)分,可以在查詢時(shí)進(jìn)行限定:

select binary column from table;  

或者

select column2 from table where binary cloumn;

補(bǔ)充:mysql中的字符集和排序規(guī)則

字符集:

字符是各種文字和符號(hào)的總稱,字符集就是字符的集合。常見字符集名稱:ASCII字符集、GB2312字符集、BIG5字符集、GB18030字符集、Unicode字符集等。

計(jì)算機(jī)要識(shí)別各種字符集文字,就需要字符編碼。所以有些字符集一個(gè)字符是2個(gè)字節(jié),有些字符集一個(gè)字符是3個(gè)字節(jié)。

排序規(guī)則:舉例

utf_bin和utf_general_ci這兩者到底有什么區(qū)別。

ci是case insensitive, 即"大小寫不敏感",a 和 A 會(huì)在字符判斷中會(huì)被當(dāng)做一樣的;

bin是二進(jìn)制, a 和A 會(huì)別區(qū)別對(duì)待.

utf8_general_ci不區(qū)分大小寫,這個(gè)你在注冊用戶名和郵箱的時(shí)候就要使用。

utf8_general_cs區(qū)分大小寫,如果用戶名和郵箱用這個(gè) 就會(huì)照成不良后果

utf8_bin:字符串每個(gè)字符串用二進(jìn)制數(shù)據(jù)編譯存儲(chǔ)。區(qū)分大小寫,而且可以存二進(jìn)制的內(nèi)容

所以排序規(guī)則主要說明了是否大小寫敏感和存儲(chǔ)方式。

以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • MySQL排序原理和案例詳析
  • MySQL 查詢的排序、分頁相關(guān)
  • MySQL利用索引優(yōu)化ORDER BY排序語句的方法
  • Mysql排序和分頁(order by&limit)及存在的坑
  • MySQL如何使用union all獲得并集排序
  • Mysql8.0使用窗口函數(shù)解決排序問題
  • MySQL單表查詢操作實(shí)例詳解【語法、約束、分組、聚合、過濾、排序等】

標(biāo)簽:吉林 滄州 甘南 錦州 黑河 隨州 荊州 資陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《基于mysql 默認(rèn)排序規(guī)則的坑》,本文關(guān)鍵詞  基于,mysql,默認(rèn),排序,規(guī)則,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《基于mysql 默認(rèn)排序規(guī)則的坑》相關(guān)的同類信息!
  • 本頁收集關(guān)于基于mysql 默認(rèn)排序規(guī)則的坑的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章