Sé que hay muchas preguntas similares sobre SF, pero creo que las mías son lo suficientemente diferentes como para justificar una nueva pregunta. Tengo una tabla que tiene una sola columna como utf8 con utf8_unicode_ci. También tiene una clave única en esta columna junto con otra columna que marca un código de idioma. Los datos en la columna están en muchos guiones diferentes (latín con varios acentos, chino y ruso, entre otros).MySQL Insensible a las mayúsculas pero sensible a los acentos Clave única UTF8
El problema es que a veces quiero ingresar dos palabras con diferentes significados que solo difieren por un signo diacrítico (es decir, año español vs año). Como utf8_unicode_ci es insensible tanto a mayúsculas como a minúsculas, cree que son las mismas y solo me permitirá ingresar una. Eso apesta. Idealmente, cambiaría toda la columna a una intercalación que es sensible a la sensibilidad pero sensible al acento, pero eso no parece existir. Hay muchas cosas diferentes que usan esta columna, por lo que prefiero no cambiar la intercalación predeterminada de la columna a utf8_bin por temor a complicar las cosas con mayúsculas y minúsculas.
Entonces, todo lo dicho, necesito alguna solución que no afecte la sensibilidad de mayúsculas y minúsculas predeterminada en las muchas consultas existentes que afectan a esta columna, pero me permitirá agregar palabras que difieren solo en un signo diacrítico. Ideas? Voy a cambiar solo la restricción de clave única a utf8_bin si es necesario, pero preferiría no, ya que nunca quiero dos cosas en la tabla que difieran solo por caso.
Algunos caracteres en mayúsculas no tienen un equivalente en minúsculas. Algunos tienen múltiples equivalentes en minúsculas. Es un desastre. –