UTF-8 в столбцах символов Sybase ASE && арабские кодовые точки
Храним текстовые данные в UTF-8 в Sybase VARCHAR
столбцы с UNIQUE INDEX
на этой колонке. Мы сталкиваемся с нарушением двойного ключа при вставке следующих двух арабских слов:
بمشًْذالسيّد
بمشًذالسيد
Более глубокий анализ кодовых точек показан в шестнадцатеричном виде:
d8 a8
d9 85
d8 b4
d9 8b
d9 92 <---- ARABIC SUKUN
d8 b0
d8 a7
d9 84
d8 b3
d9 8a
d9 91 <---- ARABIC SHADDA
d8 af
d8 a8
d9 85
d8 b4
d9 8b
d8 b0
d8 a7
d9 84
d8 b3
d9 8a
d8 af
т.е. два слова "почти" идентичны, а первое слово содержит только два дополнительных символа ARABIC SUKUN
а также ARABIC SHADDA
которые имеют какое-то значение в произношении слов (я немец, и у меня нет никаких знаний об арабском, я даже не знаю, что означают вышеупомянутые слова. Они вошли как биографические данные в нашу базу данных.).
Возможно ли, что Sybase ASE выбрасывает две кодовые точки 0xd991 и 0xd992 при создании INDEX
как какая-то нормализация? И если так, это как-то что-то, чего можно избежать с помощью конфигурации.