MySql主键不区分大小写问题、查询不区分大小写问题


一、问题一:MySql默认主键不区分大小写

实例:

  1. -- 创建混合类型   
  2. create table PlainText(  
  3. Content nvarchar(50) ,  
  4. primary key(Content)  
  5. );  
  6. insert into PlainText values('a');  
  7. insert into PlainText values('A');  


抛出异常:Duplicate entry 'a' for key 'PRIMARY',主键不能重复

解决方法1:创建表时字段指定binary

解决方法2:修改列指定binary

  1. -- 修改列  
  2. ALTER TABLE `Md5Data`.`PlainText`   
  3. CHANGE COLUMN `Content` `Content` VARCHAR(55) CHARACTER SET 'utf8' BINARY NOT NULL DEFAULT '' ;  


二、问题二:MySql查询时不区分大小写

第一种:让mysql查询时区分大小写

  1. select * from usertable where binary id = 'A';  

第二种:在建表时加以标识

    1. create table table_name {  
    2. id varchar(32) binary;  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM