兩種情況下會區分大小寫,
1、建表時,表的編碼是utf8_bin(utf8_general_ci不會區分大小寫),注意是表編碼不是資料庫編碼。區分大小寫與資料庫編碼無關。
2、建表後,可以通過 binary調整。語句如下:
alter table `wl_testdx_bin`.`wlt_testdx_bin` modify `currency` varchar(5) binary;
開始測試:
drop table `testdx_bin`;
create table `testdx_bin` (
`id` bigint(20) not null auto_increment,
`currency` varchar(5) not null default 'usd' comment '資產幣種',
`create_time` timestamp not null default current_timestamp,
`update_time` timestamp not null default current_timestamp on update current_timestamp,
primary key (`id`),
unique `idx_currency` (`currency`) using btree
) engine=innodb collate=utf8_bin;
insert into `testdx_bin`( `currency`, `create_time`, `update_time`)
values ( 'usd', '2018-10-08 22:37:04', '2018-10-08 22:37:08');
執行成功。
insert into `testdx_bin`( `currency`, `create_time`, `update_time`)
values ( 'usd', '2018-10-08 22:37:04', '2018-10-08 22:37:08');
執行成功。
drop table `testdx_bin`;
create table `testdx_bin` (
`id` bigint(20) not null auto_increment,
`currency` varchar(5) not null default 'usd' comment '資產幣種',
`create_time` timestamp not null default current_timestamp,
`update_time` timestamp not null default current_timestamp on update current_timestamp,
primary key (`id`),
unique `idx_currency` (`currency`) using btree
) engine=innodb collate=utf8_general_ci;
insert into `testdx_bin`( `currency`, `create_time`, `update_time`)
values ( 'usd', '2018-10-08 22:37:04', '2018-10-08 22:37:08');
執行成功。
insert into `testdx_bin`( `currency`, `create_time`, `update_time`)
values ( 'usd', '2018-10-08 22:37:04', '2018-10-08 22:37:08');
執行失敗。
alter table `testdx_bin` modify `currency` varchar(5) binary;
insert into `testdx_bin`( `currency`, `create_time`, `update_time`)
values ( 'usd', '2018-10-08 22:37:04', '2018-10-08 22:37:08');
執行成功。
MYSQL 區分大小寫
1 linux下mysql安裝完後是預設 區分表名的大小寫,不區分列名的大小寫 2 用root帳號登入後,在 etc my.cnf 中的 mysqld 後新增新增lower case table names 1,重啟mysql服務,這時已設定成功 不區分表名的大小寫 lower case table...
mysql 區分大小寫 大小寫敏感 配置
linux下mysql預設區分大小寫 windows下mysql預設不區分大小寫 檢視是否區分大小寫 lower case table names引數詳解 lower case table names 0 其中 0 區分大小寫,1 不區分大小寫 mysql在linux下資料庫名 表名 列名 別名大小...
mysql區分大小寫嘛 Mysql區分大小寫問題
在 mysql 中,資料庫和表其實就是資料目錄下的目錄和檔案,因而,作業系統的敏感性決定資料庫和表命名的大小寫敏感。這就意味著資料庫和表名在 windows 中是大小寫不敏感的,而在大多數型別的 unix linux 系統中是大小寫敏感的。mysql大小寫敏感可以通過配置檔案的lower case ...