mysql查詢區分大小sql語句小結

來源:互聯網
上載者:User


公司網站有需求對使用者名稱驗證要驗證大小寫。其實剛開始他註冊的時候就就都是大小寫,所以沒有必要做大小寫驗證了。但是現在要登陸的驗證大小寫,那在註冊的時候也要對此進行驗證。

但是MySQL在查詢字串時是大小寫不敏感的,在編繹MySQL時一般以ISO-8859字元集作為預設的字元集,這個字元集對大小寫不敏感,因此在比較過程中中文編碼字元大小寫轉換造成了這種現象

後來找到一個利用binary臨時解決辦法

 代碼如下 複製代碼

SELECT * FROM  ·表名·WHERE binary `user`=’www.111cn.net’

主要關鍵字binary 有它你就可以區分大小寫了。

 代碼如下 複製代碼

create  table  表名 ( name varchar (20) binary  );

如果哪些欄位需要區分大小寫在在設計表的就可以這樣寫。

解決辦法二,如果你可以修改my.ini配置可以如下解決大小寫問題

A.表名區分大小寫

 在my.conf加入:

ower_case_table_names = 0

其中 0:區分大小寫,1:不區分大小寫
 

B.插入查詢時區分大小寫

 
欄位值需要設定BINARY屬性,即可區分大小寫。

 設定的方法有多種:

建立時設定:

 代碼如下 複製代碼

CREATE TABLE T(
A VARCHAR(10) BINARY
);
 

使用alter修改:

 代碼如下 複製代碼
ALTER TABLE `tablename` MODIFY COLUMN `cloname` VARCHAR(45) BINARY;

mysql table editor中直接勾選BINARY項

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.