|
|
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
Добрый день. Есть БД 11.2.0.3 с кодировкой Cl8NSWIN1251, в ней содержатся данные на русском и английском языке. Запускается ETL-процесс, переносящий некоторые данные в другую схему той же БД. После отработки ETL-процесса в новой схеме получаем кракозябры вместо русских символов. Если во время работы етл-процесса выставить NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251, то в кракозябрах преобладают знаки вопросов. Если выставить NLS_LANG=RUSSIAN_CIS.CL8MSWIN1251, то в кракозябрах преобладают символы типа A?A?A?A«A?A¤A?A?A?A°A?A?A?A? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:16 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:17 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0nd, а попробуй из cmd C:\>SET NLS_LANG=RUSSIAN_CIS.CL8MSWIN1251 C:\>chcp 1251 C:\>sqlplus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:27 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, у меня линукс. Попробовал из консоли, результат тот же. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:30 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0nd, Чтобы ни у кого не было сомнений, покажи результат запроса Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:33 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
AmKad, Код: plsql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:37 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
Думаю попробовать в UTF-8 теперь. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:38 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0nd, А теперь давай посмотрим на данные исходной схемы. Можешь привести скриншоты своего SQL Developer-а, например. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:41 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0ndMaximaXXL, у меня линукс. Попробовал из консоли, результат тот же. Код: plsql 1. Фонт? преобразование в ssh? текущие установки сессии unix: locale Что покажет ascii таблица Код: plsql 1. SQL.ru -> FAQ -> Oracle -> CodePage, NLS_LANG: решение проблем с отображением сообщений на русском языке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:41 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0ndЗапускается ETL-процесс Подробнее ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:45 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
AmKadsec0nd, А теперь давай посмотрим на данные исходной схемы. Можешь привести скриншоты своего SQL Developer-а, например. Скриншонты чего именно? Результатов запросов, возвращающих данные на русском языке? Да, забыл добавить важную деталь - после отработки етл-процесса часть русских данных попадает в новую схему нормально, а часть - кракозябрами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:46 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
Vadim Lejnin, Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:47 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0ndРезультатов запросов, возвращающих данные на русском языке?Да, ты верно меня понял.sec0ndДа, забыл добавить важную деталь - после отработки етл-процесса часть русских данных попадает в новую схему нормально, а часть - кракозябрами.Но в контексте горячих новостей, похоже, это теряет смысл. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:48 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
envsec0ndЗапускается ETL-процесс Подробнее Подробнее не могу. Етл-процесс оракловый, не самописный. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:49 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
А еще проблема в том, что etl-процесс огроменный, и найти процедуру(ры), вставляющие данные именно в эти кракозябные таблицы не представляется возможным. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:52 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0ndА еще проблема в том, что etl-процесс огроменный, и найти процедуру(ры), вставляющие данные именно в эти кракозябные таблицы не представляется возможным.Ну и забей тогда. Пусть работает как работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:55 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
Вот еще что заметил: те запросы, которые в sql developer возвращают нормальные русские символы, через sql plus возвращают вот что: Етл-процесс как раз использует sqlplus для передачи данных. Получается, у меня с sqlplus что-то не так? Что может на него влиять кроме locale и NLS_LANG? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 11:58 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
Vadim Lejnin, Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 12:00 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0ndВот еще что заметил: те запросы, которые в sql developer возвращают нормальные русские символы, через sql plus возвращают вот что: Етл-процесс как раз использует sqlplus для передачи данных. Получается, у меня с sqlplus что-то не так? Что может на него влиять кроме locale и NLS_LANG? Изменил кодировку в настройках ssh-клиента, теперь в консоли русские данные тоже отображаются нормально. Неужели кривая кодировка ssh-клиента может влиять на формат данных в етл-процессе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 12:03 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0ndЕтл-процесс оракловый, не самописный. sec0ndЕтл-процесс как раз использует sqlplus для передачи данных. sec0ndetl-процесс огроменный Какой инструмент используется для создания и запуска etl-процесса? sec0ndНеужели кривая кодировка ssh-клиента может влиять на формат данных в етл-процессе А если подумать головой? У тебя судя по обрывкам описания процесса так или иначе используется файловая система. В которорую одна часть процесса с каким-то своим env пишет, а потом sqlplus со своим env это читает и пишет в базу. Дай-ка подумать, что тут может быть не так с кодировками, если у тебя файл пишется на *nix, где дефолт обычно юникод, а потом оттуда читается в базу с cp1251 с хрен знает какой интерпретацией кодировки входных данных? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 12:12 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
envА если подумать головой? У тебя судя по обрывкам описания процесса так или иначе используется файловая система. В которорую одна часть процесса с каким-то своим env пишет, а потом sqlplus со своим env это читает и пишет в базу. Дай-ка подумать, что тут может быть не так с кодировками, если у тебя файл пишется на *nix, где дефолт обычно юникод, а потом оттуда читается в базу с cp1251 с хрен знает какой интерпретацией кодировки входных данных? Уже понял, запустил етл-процесс и жду результатов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 12:24 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
sec0ndА еще проблема в том, что etl-процесс огроменный, и найти процедуру(ры), вставляющие данные именно в эти кракозябные таблицы не представляется возможным. ETL работает скорее всего на java в UTF8 настройка может быть где-то внутри кишок (как правило в виде параметров запуска java) Либо браться из настроек системы не надо ему мешать, настрой окружение на en_US.UTF8 для sqlplus в консоле настрой NLS_LANG=AMERICAN_AMERICA.UTF8 и попробуй выполни запрос ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 12:31 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
Vadim Lejninsec0ndА еще проблема в том, что etl-процесс огроменный, и найти процедуру(ры), вставляющие данные именно в эти кракозябные таблицы не представляется возможным. ETL работает скорее всего на java в UTF8 настройка может быть где-то внутри кишок (как правило в виде параметров запуска java) Либо браться из настроек системы не надо ему мешать, настрой окружение на en_US.UTF8 для sqlplus в консоле настрой NLS_LANG=AMERICAN_AMERICA.UTF8 и попробуй выполни запрос Такое окружение было в самом начале. Не взлетело. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 13:30 |
|
||
|
Проблема с кодировкой при передаче данных
|
|||
|---|---|---|---|
|
#18+
envКакой инструмент используется для создания и запуска etl-процесса? sh-ник ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.05.2017, 14:21 |
|
||
|
|

start [/forum/topic.php?fid=52&fpage=162&tid=1885884]: |
0ms |
get settings: |
7ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
46ms |
get topic data: |
9ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
| others: | 209ms |
| total: | 365ms |

| 0 / 0 |
