我有一个 IPA 发音音节的 mysql 表,我想在一个唯一键上区分大小写,一个包含许多带有重音符号的字符的 varchar。我还希望将具有不同口音的字符视为不平等。
我查看了 http://www.sitepoint.com/forums/showthread.php?580030-case-sensitive-unicode-table,虽然我认为它可以解决我的唯一性问题,但我不希望有奇怪的排序引起通过 utf8_bin。
我只需要通过 java 通过 hibernate 以编程方式访问数据库,所以我想我可以将唯一键更改为音节 varchar 和整数(java.lang.String 或字符串的一些自定义哈希)上的唯一键,但这会留下很小的碰撞可能性。
如果工作量不大,我愿意为此用例创建自己的自定义排序规则。什么是 utf8_bin 排序规则的好选择?任何指导表示赞赏。