Re: Can someone please explain this misbehavior?
Posted by:
A B
Date: August 20, 2014 08:15PM
"Ё" is not "accented", it is a separate letter in Cyrillic alphabet. Same for "й", which isn't threated as "accented" by MySQL for some reason.
SET @l1 = CONVERT(CAST(0xd0b8 AS CHAR) USING 'utf8') COLLATE 'utf8_general_ci';
SET @l2 = CONVERT(CAST(0xd0b9 AS CHAR) USING 'utf8') COLLATE 'utf8_general_ci';
SELECT @l1 AS `l1`, @l2 AS `l2`,
IF(@l1 = @l2, 'Bogus comparison', 'Can\'t be more correct') AS `equality`;
And some other letters.
Strictly speaking, the first word doesn't even exist. (Guess, why it's a bogus comparison?)
It's difficult, but possible to imagine, why _general collation threat [seemingly] accented letters as equal, but I would expect utf8_unicode_ci to be more sensitive to the details.
This MySQL behavior ruining unique keys when converting tables from cp1251(and a number of other cyrillic encodings) to UTF8.
Subject
Views
Written By
Posted
3013
August 19, 2014 07:53PM
1417
August 20, 2014 07:23PM
Re: Can someone please explain this misbehavior?
1543
August 20, 2014 08:15PM
1718
August 21, 2014 05:25PM
Sorry, you can't reply to this topic. It has been closed.
Content reproduced on this site is the property of the respective copyright holders.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion
of Oracle or any other party.