ORA-12705: невозможно получить доступ к файлам данных NLS или недопустимой среде - PullRequest
13 голосов
/ 09 октября 2011

На днях я получил эту досадную ошибку оракула: ORA-12705: Невозможно получить доступ к файлам данных NLS или указана неверная среда.Забавно, я не пытался получить доступ к файлам данных NLS

Ответы [ 7 ]

16 голосов
/ 09 октября 2011

Возможны две причины:

Предпринята попытка выполнить инструкцию ALTER SESSION с недопустимым параметром или значением NLS.

Переменная среды NLS_LANG содержит недопустимый язык, территорию,или набор символов.

Исправлено:

Сбросить переменную среды NLS_LANG

Windows - NLS_LANG должен быть сброшен в реестре Windows (лучше всего переименовать).Найдите раздел реестра NLS_LANG в реестре \ HKEY_LOCAL_MACHINE \ SOFTWARE \ ORACLE и переименуйте его.

Linux / UNIX - здесь вы просто вводите команду Linux "unset NLS_LANG"

5 голосов
/ 21 августа 2012

У меня Oracle 10g XE и Windows 7. Я решил это следующим образом:

Перейдите в Панель управления> Региональные и языковые параметры> Формат и установите свой язык.

2 голосов
/ 15 июня 2015

Выполните эту процедуру, чтобы установить переменную среды NLS_LANG для баз данных Oracle. Чтобы установить переменную среды NLS_LANG для баз данных Oracle Определите значение NLS_LANG. В базе данных хранилища данных выполните команду SELECT * FROM V $ NLS_PARAMETERS

Запишите значение NLS_LANG в формате [NLS_LANGUAGE] _ [NLS_TERRITORY]. [NLS_CHARACTERSET]. Например: American_America.UTF8 Для Windows: Перейдите в Панель управления> Система и перейдите на вкладку «Дополнительно». Нажмите Переменные среды. В разделе «Системные переменные» нажмите «Создать». В поле Имя переменной введите NLS_LANG. В поле Значение переменной введите значение NLS_LANG, которое было возвращено на шаге 1. Форматом значения NLS_LANG должно быть [NLS_LANGUAGE] _ [NLS_TERRITORY]. [NLS_CHARACTERSET]. Например: American_America.UTF8. Для UNIX установите переменную, как показано ниже: setenv NLS_LANG

Например: setenv NLS_LANG American_America.UTF8. Если ваши данные - 7-битный или 8-битный ASCII, а сервер Informatica работает в UNIX, то установите NLS_LANG _.WE8ISO8859P1 ПРЕДУПРЕЖДЕНИЕ. Убедитесь, что вы правильно установили переменную NLS_LANG, как указано в этой процедуре, иначе ваши данные будут отображаться некорректно.

Перезагрузите компьютер после создания переменной.

1 голос
/ 14 октября 2017

В моем случае я создавал адаптер базы данных в консоли web-логики oracle. Решите проблему, выполнив следующую конфигурацию. Windows -> панель управления -> регион: 1. Измените формат на английский (США), формат даты M / d / yy и 2. Измените мой адрес на Соединенные Штаты. Выполните эту настройку, потому что мой компьютер был настроен на испанский язык, затем перезагрузите компьютер, и я работал без проблем.

1 голос
/ 15 июня 2015

После добавления пути в переменную среды клиент Oracle Instant сервер Oracle SQLPLUSW отправляется клиенту Oracle Instant, и для этого клиента требуется установить NLS LANG AS American_America.UTF8

1 голос
/ 23 октября 2011

Вы также можете просто установить конфигурацию NLS в настройках оракула

0 голосов
/ 08 ноября 2017

В случае если вышеуказанные решения не помогли, можете попробовать мое решение.Я только что заменил мою последнюю версию Ojdbc14.jar на более старую версию Ojdbc5.jar.Это помогло мне решить мою проблему.

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