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

实例:

-- 创建混合类型 
create table PlainText(
Content nvarchar(50) ,
primary key(Content)
);
insert into PlainText values('a');
insert into PlainText values('A');

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

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

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

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

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

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

select * from usertable where binary id = 'A';
第二种:在建表时加以标识
create table table_name {
id varchar(32) binary;
}



本文转载:CSDN博客