Měli byste použít řazení utf8_unicode_ci
když používáte německé znaky, podle diskuze v této chybě:Chyba #39816 Německé řazení pod utf8_unicode_ci je nesprávné
.
Navzdory názvu této chyby jsem to právě testoval na 5.6.15 a váš testovací případ funguje, zatímco výchozí řazení unicode nefunguje:
CREATE TABLE `test` (
`id` varchar(5) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 DEFAULT COLLATE=utf8_unicode_ci;
INSERT INTO `test` (`id`) VALUES ('das'), ('daß');
PS:Doporučuji, abyste ve vývojovém prostředí používali stejné verze veškerého softwaru jako vaše produkční prostředí, nebo alespoň sdíleli stejnou hlavní verzi. Pokud vyvíjíte v 5.5 a poté se pokusíte nasadit na 5.0, určitě narazíte na další nekompatibility.