Неанглийские буквы в SQL-скрипте - Oracle Sql Developer

Я выполняю какой-то случайный скрипт в своей локальной базе данных, и у меня проблема с неанглийскими буквами. Когда я выполняю ту же инструкцию вставки непосредственно из sql develeoper, все в порядке. Может кто-нибудь объяснить, как я могу избежать этой проблемы с помощью сценария SQL? Пример. Все работает нормально Утверждение: insert into my_table values ('aaaaała'); Результат: 'aaaaała';

Теперь я вставляю тот же оператор вставки в мой файл sql (script.sql) и пишу:

@'D:\script.sql';

'D: \' - это местоположение этого файла. insert into my_table values ('aaaaała'); Результат: 'aaaaała';

Результат неверный:

Мои настройки:

1 ответ

Вы должны установить свой NLS_LANG значение в соответствии с набором символов script.sql файл. Обычно вы устанавливаете это в опциях в диалоговом окне "Сохранить".

Например, если файл.sql был сохранен как UTF-8, необходимо выполнить:

set NLS_LANG=.AL32UTF8
sqlplus .... @'D:\script.sql';

Смотрите также OdbcConnection, возвращающий китайские иероглифы как "?" Больше подробностей.

Другие вопросы по тегам