Partitioning and case sensitivity

Hey there.
I am running: percona 5.7.26-29 on Centos.

It seems that when trying to match an row into range partition mySQL server ignoring string case.
Perhaps we have partitioned table:
create table partitioned_table(
pkey varchar(50)
) PARTITION BY LIST COLUMNS(pkey)
(partition p_A values in (‘A’));

insert into partitioned_table values (‘a’);
insert into partitioned_table values (‘A’);
select * from partitioned_table partition(p_a);
±-----+
| pkey |
±-----+
| a |
| A |
±-----+
And obviously:
insert into partitioned_table values (‘b’);
ERROR 1526 (HY000): Table has no partition for value from column_list

It seems for me wrong are ‘A’ is not equal to ‘a’
I didn’t find (probably didn’t looked good enough) in documentation any thing regarding this behaviour.

Any thoughts?
Thanks

Update:
Sorry my bad, I forgot that by default mySQL ignoring string case.
Therefore a = A.
So nothing to warry about, just remember…

Sorry my bad, I forgot that by default mySQL ignoring string case.
Therefore a = A.
So nothing to warry about, just remember…

1 Like