我正在建立一个数据库来做一些语言分析,日本假名给我带来了一点麻烦。
与目前为止的其他问题不同,我不知道这本身就是一个编码问题。我已经将合并设置为utf8_unicode_ci
,从表面上看,它可以保存并回忆大部分事情。
然而,问题是当我进入相关的假名时,例如キ(ki)和ギ(gi)。出于分类目的,日本人不区分这两者,除非它们发生直接冲突。例如:
我认为这种行为是我问题的根源。从外部文件加载我的数据集时,我让它进行SELECT调用以验证是否尚未记录日语中的特定读数。如果它已经存在,它将获取ID,以便它可以与标题配对;否则会添加一个新条目并在此后配对。
我把所有东西放进去后注意到的是,无论发生两个这样类似的读数,遇到的第一个都会被记录下来,如果它出现的话会出现另一个误报。例如:
如果需要,我可以通过并手动对其进行排序,但我真正想做的是设置数据库以更加严格地区分字符(例如,如果字符有两个不同的UTF-8代码积分,将它们视为不同的角色)。有没有办法解决这个问题?
答案 0 :(得分:2)
您可以使用utf8_bin
获取通过Unicode代码点比较字符的排序规则。
utf8_general_ci
整理也区分了キョウ和ギョウ。
答案 1 :(得分:1)
保存到数据库时 将其保存为二进制 当回电时将其改为日语 阿拉伯语与我同样的问题