The problem
A friend is developing a Swedish dictionary web application. One use will be for checking words in Scrabble games. The Swedish Scrabble rules (in Swedish) allow for example 'a' and 'á' to be treated as the same letter, but not 'u' and 'û' or 'y' and 'ü'. The Swedish collation rules (latin1_swedish_ci) think differently and treat 'y' and 'ü' as the same letter, making the word 'mysli' match as a correct word although it should be spelled 'müsli'.
Three proposed solutions
Update: added a third solution proposal (in bold)
- Use different collations for different rows in the words table. Is that possible?
- Clone the Swedish collation definition, edit it and use in MySQL. Can that be done easier than the methods described here?
- Add a new column to the table with the special words. It is possible to have different collations on columns, right? Would the SQL query become very slow when searching for a word in both columns?
Other suggestions?
Could this be solved in some other way?