ORACLE - NLS_LANG, CHARSET, SPECIAL CHARS - PullRequest
       63

ORACLE - NLS_LANG, CHARSET, SPECIAL CHARS

0 голосов
/ 10 января 2020

У меня есть следующая проблема на WINDOWS (итальянский):

ORACLE DB NLS_PARAMETERS

мой параметр NLS_LANG: ITALIAN_ITALY. UTF8

Я хочу выполнить следующий запрос:

INSERT INTO SCHEMA.MY_TABLE("NAME") VALUES('ò');

Выполнение с помощью командной строки (чистый sqlplus) сохраняет недопустимые данные в БД.

При использовании SQLDEVELOPER сохраняются правильные данные.

Я не могу найти способ правильно настроить этот элемент, что мне делать? Использование SQLPLUS из командной строки обязательно .

Любая помощь приветствуется.

1 Ответ

2 голосов
/ 10 января 2020

Когда вы используете sqlplus, он наследует набор символов из окна командной строки. Вы можете запрашивать и изменять набор символов (или кодировку) с помощью chcp, я предполагаю, что это CP850 - это не UTF8.

Запустите chcp 65001 перед запуском sqlplus, тогда он должен работать. См. Также Преобразование специальных символов немецкого языка в английский sh эквивалентный в Oracle SQL / PL- SQL или для чтения более подробной информации OdbcConnection, возвращая китайские символы как "?"

...