程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL查詢時強制區分大小寫

MySQL查詢時強制區分大小寫

編輯:MySQL綜合教程

平時很少會考慮數據存儲需要明確字符串類型字段的大小寫,MySQL默認的查詢也不區分大小寫。但作為用戶信息,一旦用戶名重復,又會浪費很多資源。再者,李逵、李鬼的多起來,偵辨起來很困難。要做到這一點,要麼在建表時,明確大小寫敏感(字段明確大小寫敏感)。如果通盤數據庫所有字段都需要大小寫敏感,不如在字符集設置時做好調整。不過,通常不建議這麼做。

如果跟我一樣,數據庫已經在線上跑了,一個表上百萬條數據,做字段類型變更有可能導致數據庫宕機。那麼好吧,在查詢時,多加個單詞好了!
例如,一般查詢:

SELECT * FROM `user` WHERE name LIKE 'a%';  
SELECT * FROM `user` WHERE name LIKE 'A%';  
其結果是一樣的,為了區分'A%'和'a%',可以這麼做:
SELECT * FROM `user` WHERE binary name LIKE 'a%';  
SELECT * FROM `user` WHERE binary name LIKE 'A%';  
僅僅多了一個binary,就可以得到不同的結果!

當然,如果需要建表時強制區分大小寫,可以這麼寫:
create  table  `user`(    
     name varchar (20) binary      
); 

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved