MySQL: UTF8 und Sortierung bei einem Unique-Key für VARCHAR
Gerade hatte ich seltsames Problem. Folgende Ausgangssituation war vorhanden: 1 Tabelle mit 2 Feldern (id = int und text=varchar(50)). ID war der PrimaryKey für die Tabelle und auf text lag ein UNIQUE-Index (textidx). Nun wollte ich zwei Zeilen einfügen. Einmal den Text “wurde” und einmal den Text “würde”. Als Ergebnis bekam ich bei der zweiten Zeile, dass der Key für den Index textidx bereits vorhanden wär. Auch eine Abfrage nach: select * from textidx where text='würde' brachte das Wort “wurde” als Ergebnis. Schuld daran war die Sortierung (Collation). Ich hatte utf8_general_ci eingestellt. Durch das Umstellen auf UTF8_bin wurde das Problem behoben. Man sollte jedoch beachten, dass ein Umstellen der Collation auch eine Umsortierung zur Folge hat.