Почему объекты Oracle возвращают "???" для каждого текстового атрибута? - PullRequest
5 голосов
/ 18 апреля 2011

Я написал процедуру, возвращающую простой объект со всеми атрибутами, объявленными как VARCHAR2.Мой Java-код, после выполнения процедуры, прочитал эти объекты, и все, что я вижу, это три знака вопроса "???"вместо текста.Кажется, это может быть проблема NLS_LANG, но я не совсем уверен.

Это проблема NLS_LANG?Как я могу решить эту проблему?

ПРИМЕЧАНИЕ. Приложение Java 1.5 запрашивает базу данных Oracle 10g.

Ответы [ 2 ]

4 голосов
/ 18 апреля 2011

При использовании международных символов с типами объектов Oracle необходимо указать orai18n.jar, который можно загрузить в том же месте, что и сам драйвер.

Из файла readme драйвера:

orai18n.jar: Содержит классы для поддержки NLS в типах объектов и коллекций Oracle.

2 голосов
/ 18 апреля 2011

Похоже на проблему с Unicode, попробуйте получить свой набор символов базы данных:

Select value from SYS.NLS_DATABASE_PARAMETERS where PARAMETER = 'NLS_CHARACTERSET'

Если проблема все еще существует, я предлагаю вам посмотреть Поддержка Unicode с Oracle

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...