К сожалению, UNICODE не спасает от всех проблем автоматически. Например в турецком и румынском языках быквы i и ı (латинское и с точкой и без точки) различаются. И апперкейз от i должен давать İ, а не I как в большой части языков с латинским алфавитом (аналогично - ловеркейс от I - должен давать ı, а не i). Я не знаю, как конкретно в UTF16_BIN эта проблема решается (думаю - общим способом, а не турецк-румынским), но если ты ту же аксапту ставишь в международной компании, то либо турки с румынами будет материться и плакать от сконвертированных в неправильную букву фамилий, либо все остальные будут делать то же самое, обнаружив в немецких или английских фамилиях замечательную буковку İ. Аналогичная проблема будет с сортировкой. İ и ı должны идти между h и k, а не где-то во второй половине юникодной таблицы, после z.
Так что юникод - не панацея и спасает не от всех проблем локализации, а только от самых фундаментальных проблем хранения многоязычных текстов. Как только дело до сортировки, сравнения и конвертации регистра доходит - сразу грабли случаются.
|