Проблемы с глобализацией при использовании коллекций Oracle с тонким JDBC

Подводя итог проблеме:

  1. Извлечение строк в Java 1.5 (JDBC) отлично работает, если используется кодировка БД Western ISO 8859-2.
  2. При переключении на восточноевропейский ISO (например, ISO 8859-5) работают все обычные преобразования строк JDBC, кроме тех, которые связаны с коллекциями Oracle, например. вложенные таблицы объектов. Вместо правильных строк, даже таких простых, как "1", я получаю "???" (три вопросительных знака) вместо этого.

Я попробовал следующие файлы JAR 10.2.0.4 JDBC, но безрезультатно:

  • ojdbc14.jar
  • orai18n.jar

Я также пробовал CHAR и VARCHAR2, и оба ведут себя одинаково.


person Andrew not the Saint    schedule 17.10.2008    source источник


Ответы (1)


Возможно, вы захотите попробовать использовать тип NVARCHAR2.

Этот тип лучше подходит для неанглийских символов.

person Ovesh    schedule 20.10.2008
comment
Это хороший обходной путь, я сам недавно подумал об этом. Тем не менее, orai18n.jar должен работать, но я получаю какие-то странные ошибки. Кстати, символы в некоторых строках отображаются как ??? просто простые ASCII! - person Andrew not the Saint; 20.10.2008