在Ingres中,DBA在创建支持Unicode的Ingres数据库时有两个选项。 createdb具有NFC(标准化表格C)的-i
标志和NFD的-n
标准化(标准化表格C)。文档没有区别,描述几乎相同。
我们可以假设没有差异,或者 之间存在一些差异吗?
答案 0 :(得分:3)
区别在于字符是由(C)组成还是由分解(D)组成。
具有像ä这样的“额外位”的字母可以用不同的方式表示。有一个专门为带有两个点的a创建的Unicode代码点。这就是组合形式,NFC。另一方面,你可以将它表示为通常的“a”,然后是组合字符,添加两个点。那是分解形式,NFD。
分解形式占用更多空间,但组合形式使一些操作更难,例如比较字符串而忽略重音的差异。