Экспорт SQLPluse Query из Oracle в CSV с кодировкой UTF-8 - PullRequest
1 голос
/ 27 апреля 2020

Я использую приведенный ниже скрипт SQLPluse для экспорта данных из Oracle в файлы CSV. Проблема в том, что мне нужно, чтобы файлы были в UTF-8 и в настоящее время ANSI. Как мне go получить файлы в формате UTF-8?


SET colsep ';'
SET TERMOUT OFF
SET NEWPAGE 0
SET SPACE 0
SET LINESIZE 800
SET PAGESIZE 0
SET ECHO OFF
SET FEEDBACK OFF
SET HEADING OFF
SET NUMW 50



column timecol new_value timestamp
column spool_extension new_value suffix
SELECT '.csv' spool_extension
FROM dual;
/


SPOOL C:\job_files\production\Data_Upload\TEST_1&&suffix
@@"C:\job_files\production\Data_Upload\TEST_1";
/


Exit;

1 Ответ

0 голосов
/ 28 апреля 2020

Из вашего вопроса не совсем ясно, что вы имеете в виду, но я предполагаю, что проблема заключается в том, что данные, возвращаемые вашим запросом, содержат данные UTF8, но ваши выходные данные не показывают символы UTF8 правильно.

Переменная среды NLS_LANG управляет тем, как Oracle инструменты / программы, включая SQL* Plus, обрабатывают такие данные.

Обычно для переменной задается значение, соответствующее базе данных, например

export NLS_LANG=AMERICAN_AMERICA.AL32UTF8

Затем запустите SQL* Plus.

Вы можете запросить NLS_DATABASE_PARAMETERS, чтобы посмотреть, какие языковые настройки есть в базе данных, и поэкспериментировать с переменной NLS_LANG, как указано выше.

Формат значения NLS_LANG равен LANGUAGE_COUNTRY.CHARSET.

...