powered by simpleCommunicator - 2.0.50     © 2025 Programmizd 02
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Проблема с кодировкой при передаче данных из Oracle в MSSQL
15 сообщений из 15, страница 1 из 1
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070026
verter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1С подключается к базе Oracle 11.2.0.1, делается запрос, который получает в результате текстовые данные на русском языке. Затем эти данные заливаются в базу 1С, которая на MSSQL. В итоге вместо русских букв в 1С появляются вопросики. Значит не та кодировка. На хосте где стоит сервер 1С с базой MSSQL установлен минимальный оракловский клиент, вернее не установлен, а просто переписана папка с этим клиентом, в котором настроен tnsnames, чтобы можно было соединиться с базой Oracle. В переменных среды нет NLS_LANG и в реестре тоже нет параметра NLS_LANG, т.к. оракловский клиент не устанавливался. На хосте где установлен сервер ORACLE в реестре NLS_LANG = AMERICAN_AMERICA.CL8MSWIN1251
Я так понимаю, на хосте где 1С нужно для оракловского клиента каким то образом указать NLS_LANG = RUSSIAN_RUSSIA.CL8MSWIN1251

Можно ли (чтобы ничего не менять на хосте где установлен MSSQL) каким то образом в запросе к ораклу указать в какой кодировке вытаскивать? Ну что то типа такого:

select to_char(t.name,'NLS_CHARSET','AL32UTF8') from tbl t

В настройках MSSQL стоит значение кодировки как на картинке:
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070029
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сначала надо всё же проверить: проблема на стороне Оракула или MS SQL. То есть посмотреть
на реальную кодировку вытащенных данных. Иначе с бубном можно плясать бесконечно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070031
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verter
В переменных среды нет NLS_LANG и в реестре тоже нет параметра NLS_LANG, т.к. оракловский клиент не устанавливался.

Так установите, в чем проблема?
Без этой переменной по умолчанию клиент работает в US7ASCII
verter

На хосте где установлен сервер ORACLE в реестре NLS_LANG = AMERICAN_AMERICA.CL8MSWIN1251

Не играет в Вашем сценарии.
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070038
verter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymous
verter
В переменных среды нет NLS_LANG и в реестре тоже нет параметра NLS_LANG, т.к. оракловский клиент не устанавливался.

Так установите, в чем проблема?

Чтобы установить переменную среду нужно потом перегружать сервер где 1С, а этого очень не хочется делать.
А в реестр как прописать? Ведь в реестре ключи появляются когда устанавливаешь оракловского клиента, а мы не устанавливали, а просто переписали папку с файлами драйвера ODBC.
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070044
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verter
andrey_anonymous
пропущено...

Так установите, в чем проблема?

Чтобы установить переменную среду нужно потом перегружать сервер где 1С, а этого очень не хочется делать.
А в реестр как прописать? Ведь в реестре ключи появляются когда устанавливаешь оракловского клиента, а мы не устанавливали, а просто переписали папку с файлами драйвера ODBC.

Выгрузите ветку оттуда же, откуда переписывали клиента, и залейте.
Это стандартный функционал штатного RegEdit
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070106
verter
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Сисадмин не верит и очень беспокоится, боится, что если завести переменную окружения с именем NLS_LANG, то это повлияет на работу других программ кроме оракловского клиента. Ведь NLS_LANG - это же изобретение оракла, ведь так?
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070109
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если у вас есть сисадмин, то кто ты такой и почему пытаешься решать проблему за него?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070111
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
verter
Ведь NLS_LANG - это же изобретение оракла, ведь так?

Так.
А сисадмину дайте что-нибудь от паранойи.
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070114
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousА сисадмину дайте что-нибудь от паранойи.

Этого не надо, паранойя - полезное качество. А что надо, так это не пытаться лезть в его
епархию, а долбить его докладными пока он сам не установит и правильно настроит нужный
софт, что входит в ЕГО служебные обязанности.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070117
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
что входит в ЕГО служебные обязанности.

Случаи разные бывают.
Что касается паранойи - то она приветствуется лишь пока здоровая .
В описанном же случае паранойя нездоровая, поскольку порождена незнанием, помноженным на нежелание изучать подведомственную мат. часть, что откровенно мешает работе.
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070120
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_anonymousВ описанном же случае паранойя нездоровая, поскольку порождена незнанием, помноженным на
нежелание изучать подведомственную мат. часть, что откровенно мешает работе.
И именно исправлению этого может помочь служебная записка, ибо ставит его в позицию
"учись или ищи новую работу". Впрочем, к автору это тоже относится, поскольку для её
написания он должен предоставить доказательства, что проблема именно в криво настроенном
клиенте Оракула, а для этого таки придётся посмотреть в каком виде данные оттуда приходят
в его 1С. Чего он сделать сейчас неспособен.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070121
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakov
Впрочем, к автору это тоже относится, поскольку для её
написания он должен предоставить доказательства, что проблема именно в криво настроенном
клиенте Оракула, а для этого таки придётся посмотреть в каком виде данные оттуда приходят
в его 1С. Чего он сделать сейчас неспособен.

Ну отчего же не способен...
- про NLS_LANG в переменных окружения и/или в реестре узнал самостоятельно
- когда достиг предела компетентности - не постеснялся спросить совета у тех, кто может владеть необходимой информацией.
Как по мне - ТС в адеквате и действует разумно.
...когда я в своё время пытался разобраться в вопросе языковых настроек оракеля, то столкнулся, помнится, с огромным количеством дезориентирующего информационного шума вокруг этого не особо сложного вопроса.
По интернетам, к примеру, было затруднительно понять даже где именно
надо настраивать этот самый NLS_LANG - на клиенте или на сервере? Или такой вопрос: должен ли NLS_LANG на клиенте быть таким же как на сервере, и если да - то зачем, а если нет - то как именно его правильно выбрать?
Сегодня-то я знаю не только ответы, но и первоисточник, но тогда...
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070181
НеофитSQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
В этом вопросе полезно знать какая кодировка ожидалась, а какя пришла,
чтобы методом тыка не привести все к неудачному общему знаменателю, об который потом спотыкаться.

Есть умельцы, которые по внешнему виду закорючек результата на глаз определяют вышеупомянутое;
я, слава богу, давно разучился такое делать поэтому когда могу записываю в файл, и смотрю уже там.

Если схватить данные на лету для инспекции затруднительно, пульни строчку 'RЯR' и посмотри во что она превратится.

Например, если пришло 866 а ждал 1251, увидишь RџR,
если пришло утф8 а хотел 866, будет R╨пR, и т.д.
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070187
Вячеслав Любомудров
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В US7ASCII он нихрена кроме вопросов не увидит

PS. И не путай кодировку клиента с кодировкой терминала
...
Рейтинг: 0 / 0
Проблема с кодировкой при передаче данных из Oracle в MSSQL
    #40070315
Фотография andrey_anonymous
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вячеслав Любомудров
PS. И не путай кодировку клиента с кодировкой терминала

Кстати да, это важное уточнение для экспериментаторов.
...
Рейтинг: 0 / 0
15 сообщений из 15, страница 1 из 1
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Проблема с кодировкой при передаче данных из Oracle в MSSQL
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]