utf8_bin
sortering används för att jämföra strängar i ett skiftlägeskänsligt läge, med det binära värdet för varje tecken. Det kan bero på dina lokala inställningar för din databas vilken teckenuppsättning eller sortering som används. Till exempel för en MySQL-databas kan du kontrollera sorteringsläget för din MySQL-databas med följande MySQL-kommando
mysql> SELECT COLLATION(VERSION());
+----------------------+
| COLLATION(VERSION()) |
+----------------------+
| utf8_general_ci |
+----------------------+
..eller genom att använda den här..
mysql> show variables like '%collation%';
+----------------------+-------------------+
| Variable_name | Value |
+----------------------+-------------------+
| collation_connection | utf8_general_ci |
| collation_database | latin1_swedish_ci |
| collation_server | latin1_swedish_ci |
+----------------------+-------------------+
I ditt fall bör ett av dessa värden vara utf8_bin
. De allmänna värdena för databasen kan ställas in i din konfigurationsfil, förmodligen my.cnf
för MySQL. För att skapa en MySQL-tabell med en specifik motor, teckenuppsättning eller sortering kan du använda migreringsalternativ:
create_table :users,
:options => 'ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_general_ci'
...
Enligt dokumentationen, tabellteckenuppsättning och sortering är MySQL-tillägg, det finns inga sådana saker i standard SQL.