Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

Изменение characterset клиентского приложения.

Skip to first unread message

Anatoly V. Gerasimov

unread,
May 9, 2007, 3:12:20 AM5/9/07
to
Hello All,

Захотелось мне определённости с кодировкаами. Действительно, Oracle
поддерживает много языков, кодировок которые можно применять в приложениях.
Причем, изменять эти настройки можно многочисленными путями что делает
результат не таким уж и предсказуемым. Довольно универсальный метод,
определить тем или иным способом NLS_LANG, например, RUSSIAN_CIS.RU8PC866.
Hапример, перед вызовом sqlplus, выполняющего SQL скрипт. Однако, существует
интегрированая система батников, использующая различные SQL скрипты как
плагины и определяющая NLS_LANG=AMERICAN_CIS.CL8MSWIN1251 и скрипт должен
быть использован внутри этой системы. В таком случае, было бы разумно
установить языковые настройки непосредственно изнутри SQL скрипта. LANGUAGE
и TERRITORY меняются легко но способа изменить CHARACTERSET я не нашел. Из
объяснений старшего специалиста я понял, что charset задается при создании
пользовательской сессии и изменить его нельзя. Как можно решить/обойти
проблему?
И второй вопрос: Использую ODBC Microsoft драйвер для Oracle из Perl
скрипта. Перед выполнением скрипта задаю требуемый NLS_LANG. Однако,
проверив параметры сессии обнаруживаю что опять же, language и territory
поменялись, но characterset остался CL8MSWIN1251. Та же самая проблема? Что
можно придумать здесь чтобы разные скрипты могли использовать разные
charsets?
Бардак с кодировками связан с желанием использовать одну и ту же систему для
решение существенно разных задач.

WBR Anatoly


Sergey Zakharov

unread,
May 10, 2007, 2:29:58 AM5/10/07
to
Hello Anatoly!

AG> characterset остался CL8MSWIN1251. Та же самая проблема? Что можно
AG> придумать здесь чтобы разные скрипты могли использовать разные
AG> charsets?
AG> Бардак с кодировками связан с желанием использовать одну и ту же
AG> систему для решение существенно разных задач.

Решишь вопрос - сообщи в эху, плиз.
Hа АСП2.HЕТ СШарп та же проблема с кодировкой American_America.Iso8859P1

Пока здесь не очень помогли.

Best regards,
Sergey E-mail: zah.asu(сoбaкa)bmz.gomel.by

Anatoly Gerasimov

unread,
May 11, 2007, 4:37:42 AM5/11/07
to
Hello Sergey,

> AG> characterset остался CL8MSWIN1251. Та же самая проблема? Что можно
> AG> придумать здесь чтобы разные скрипты могли использовать разные
> AG> charsets?

> Решишь вопрос - сообщи в эху, плиз.
> Hа АСП2.HЕТ СШарп та же проблема с кодировкой American_America.Iso8859P1
>
> Пока здесь не очень помогли.

А какие вообще были/есть идеи на этот счёт? Причем, изменение глобальной
переменной окружения либо параметра в реестре NLS_LANG -
меняются language и terrirory но не characterset. Причем, перезагрузка
dllhost не помогает, т.е. драйвер не "не может" а "не хочет" сменить
mswin1251 на что другое...

WBR Anatoly

Anatoly Gerasimov

unread,
May 11, 2007, 6:27:48 AM5/11/07
to
"Anatoly Gerasimov" <Anatoly_...@p128.f113.n5070.z2.fidonet.org> wrote
in message news:4643...@p128.f113.n5070.z2.fidonet.org...
Тут я гоню.... Меняется charset.

≤╘┴Ў╔╙╠┴Ґ ≤╒╚╧╠г╘

unread,
May 11, 2007, 2:20:54 AM5/11/07
to
On Wed, 09 May 2007 15:12:20 +0800, "Anatoly V. Gerasimov" <ga...@list.ru>
wrote:

> Hello All,

> И второй вопрос: Использую ODBC Microsoft драйвер для Oracle из Perl
> скрипта. Перед выполнением скрипта задаю требуемый NLS_LANG. Однако,
> проверив параметры сессии обнаруживаю что опять же, language и territory
> поменялись, но characterset остался CL8MSWIN1251. Та же самая проблема?

В перле как задаёшь кодировку?

$ENV{NLS_LANG}='X_Y.CL8' ?

у меня так работает.

--
остаюсь искренне ваш,
Станислав Сухолёт

Anatoly Gerasimov

unread,
May 14, 2007, 12:51:57 AM5/14/07
to
Hello Станислав,
"Станислав Сухолёт" <ct...@osib.so-cdu.ru (уФБОЙУМБЧ уХИПМ?Ф)> wrote in
message news:1a50...@sukholetsi.odusb.so...
> From: ct...@osib.so-cdu.ru (≤╘┴Ў╔╙╠┴Ґ ≤╒╚╧╠г╘)

>
> В перле как задаёшь кодировку?
>
> $ENV{NLS_LANG}='X_Y.CL8' ?
>
> у меня так работает.
>
Совершенно верно. Я уже понял что во всех своих экспериментах смотрел
результат не там где надо.

WBR Anatoly.

0 new messages