日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

mysql查詢(xún)時(shí)不區(qū)分大小寫(xiě)

 Coder編程 2022-09-23 發(fā)布于北京

  一次偶然的機(jī)會(huì),發(fā)現(xiàn)在登陸驗(yàn)證時(shí),改變用戶名的大小寫(xiě),同樣可以登錄成功,這是由于,當(dāng)時(shí)使用的mysql數(shù)據(jù)庫(kù)對(duì)大小寫(xiě)不敏感,查詢(xún)時(shí)總是能查詢(xún)到數(shù)據(jù)。一番查找資料,給出的原因是:在創(chuàng)建數(shù)據(jù)庫(kù)的時(shí)候,選擇了utf8_general_ci排序規(guī)則。

  創(chuàng)建數(shù)據(jù)庫(kù)時(shí),需要同時(shí)選擇字符集和排序規(guī)則,字符集大家都知道是怎么回事,那排序規(guī)則干嘛用的呢?

  排序規(guī)則:是指對(duì)指定字符集下不同字符的比較規(guī)則。其特征有以下幾點(diǎn):
    1、 兩個(gè)不同的字符集不能有相同的排序規(guī)則
    2、 兩個(gè)字符集有一個(gè)默認(rèn)的排序規(guī)則
    3、 有一些常用的命名規(guī)則:如_ci結(jié)尾表示大小寫(xiě)不敏感(caseinsensitive),_cs表示大小寫(xiě)敏感(case sensitive),_bin表示二進(jìn)制的比較(binary)。

  我用的是5.6版本的mysql,對(duì)于這個(gè)版本是不支持utf8的cs排序規(guī)則,如果要想對(duì)大小寫(xiě)敏感,可以使用_bin的排序規(guī)則。

  與此同時(shí),可以使用“show COLLATION;”查詢(xún)當(dāng)前版本的數(shù)據(jù)庫(kù)支持的所有排序規(guī)則。使用 “show charset like 'utf8%';”進(jìn)一步查看當(dāng)前字符集的默認(rèn)排序規(guī)則是什么。

  對(duì)于_ci的規(guī)則,表示不區(qū)分大小寫(xiě),如圖所示:

  對(duì)于使用_bin排序規(guī)則的查詢(xún)?nèi)缦?

   對(duì)于已經(jīng)創(chuàng)建好的表,可以是用如下命令進(jìn)行修改(修改表結(jié)構(gòu)的Collation屬性):

    ALTER TABLE TABLENAME MODIFY COLUMN COLUMNNAME VARCHAR(50) BINARY CHARACTER SET utf8 COLLATE utf8_bin DEFAULT NULL;

    上面著重色部分分別表示表名和列名。

  

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類(lèi)似文章 更多