Получение SQLPlus для вывода символов Unicode выводится как? - PullRequest
7 голосов
/ 24 августа 2011

Я пытаюсь заставить Oracle sqlplus (10.2) выдавать данные Unicode на Linux-машине. Я нашел несколько обсуждений этой проблемы, но не получил четких ответов, кроме как проверить настройки локали и установить для NLS_LANG значение AL32UTF8. Вся информация о локали установлена ​​на "en_US.UTF-8", я выложу полный вывод по запросу.

ОС (vi и т. Д.) Распознает и принимает символы Юникода без проблем. Однако при использовании sqlplus все символы, не входящие в ASCII, изменяются на? персонажи. В базе данных Oracle для NLS_CHARACTERSET установлено значение AL32UTF8, а для NLS_NCHAR_CHARACTERSET установлено значение AL16UTF16.

Мне не хватает некоторых настроек или переключателей, которые нужно установить для самого sqlplus? Любые идеи будут высоко оценены.

1 Ответ

11 голосов
/ 25 августа 2011

Я нашел ответ на это.Очевидно, что настройка NLS_LANG (правильная настройка AMERICAS_AMERICA.AL32UTF8) в сценарии оболочки не работает.Он должен быть экспортирован:

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8
...