Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Крякозябры в SQLPlus  [new]
Ailer
Guest
Доброго вермени суток!
Имеется Oracle 9i под винду. При запуске SQLPlus он пытаеться со мной говорить на моём языке(русском ессно), но не может-видны только "колябушки". Как лечить(unset lc_all не предлагать ;))
Заранее спасибо :)
16 авг 06, 11:22    [3009073]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
james1982
Member

Откуда:
Сообщений: 62
в cmd
chcp 1251
sqlplus ...

соответственно NLS такой же должен стоять
16 авг 06, 11:28    [3009146]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
Proteus
Member

Откуда:
Сообщений: 1348
правильно прописать
cmd
>set NLS_LANG=russian_cis.ru8pc866

>sqlplus
16 авг 06, 11:35    [3009213]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
AI
Member

Откуда: Москва
Сообщений: 2817
james1982
в cmd
chcp 1251
sqlplus ...

соответственно NLS такой же должен стоять


Там еще в терминале надо установить фонт lucida console. Для большинства людей, которым я это говорил, так настроить было черезчур немножечко слишком сложно.

Вот такой образованный люд у нас пошел...
16 авг 06, 12:11    [3009601]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
contr
Member

Откуда:
Сообщений: 1909
AI
Вот такой образованный люд у нас пошел...

Ну не всем же довелось со DOS побороться :)
На самом деле это действительно немножечко слишком сложно по сравнению с установкой переменной окружения. Особенно в свете того незамысловатого факта, что многие "русскоязычные" консольные утилиты работают в 866 и не "понимают" chcp.
16 авг 06, 12:15    [3009657]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
Senatorsa
Member

Откуда:
Сообщений: 8
Ailer
Доброго вермени суток!
Имеется Oracle 9i под винду. При запуске SQLPlus он пытаеться со мной говорить на моём языке(русском ессно), но не может-видны только "колябушки". Как лечить(unset lc_all не предлагать ;))
Заранее спасибо :)



в реестре
hkey_local_machine/software/oracle/nls_lang=RUSSIAN_CIS.CL8MSWIN1251
hkey_local_machine/software/oracle/home/nls_lang=RUSSIAN_CIS.CL8MSWIN1251

вот и все.
Все будет по русски
если хочешь по АМЕРИКАНСКи )))) AMERICAN_CIS.CL8MSWIN1251
16 авг 06, 17:26    [3012554]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
SeaGate
Member

Откуда: Новосибирск
Сообщений: 1635
Senatorsa
Ailer
Доброго вермени суток!
Имеется Oracle 9i под винду. При запуске SQLPlus он пытаеться со мной говорить на моём языке(русском ессно), но не может-видны только "колябушки". Как лечить(unset lc_all не предлагать ;))
Заранее спасибо :)



в реестре
hkey_local_machine/software/oracle/nls_lang=RUSSIAN_CIS.CL8MSWIN1251
hkey_local_machine/software/oracle/home/nls_lang=RUSSIAN_CIS.CL8MSWIN1251

вот и все.
Все будет по русски
если хочешь по АМЕРИКАНСКи )))) AMERICAN_CIS.CL8MSWIN1251

И что помогло для SQL*Plus (без w)?
16 авг 06, 17:35    [3012623]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
AI
Member

Откуда: Москва
Сообщений: 2817
contr
AI
Вот такой образованный люд у нас пошел...

Ну не всем же довелось со DOS побороться :)
На самом деле это действительно немножечко слишком сложно по сравнению с установкой переменной окружения. Особенно в свете того незамысловатого факта, что многие "русскоязычные" консольные утилиты работают в 866 и не "понимают" chcp.


Вопрос не в корозябках на экране винды. Здесь решений два и оба равнозначные. Я не вижу разницы между set nls_lang=..... и chcp 1251 c использованием юникодных фонтов для cmd.exe, тем более, что установка фонта - процедура одноразовая.

Но администратор базы просто обязан включить английский язык для общения с оракулом. В момент аварийного старта запросто можно получить ошибку в виде ora-nnnnn:?????????????. При nls_lang=american..... такого просто никогда не будет. Сообщение появится в понятном виде (а если админ и этого прочитать не может - то пусть занимается наклейкой обоев и не на экраны пользователей).

А в качестве совсем уж побрюзжать - поучились бы виндостроители у авторов гуевого терминала юникса или линукса, работающего в юникоде без всяких дополнительных шаманистик.
16 авг 06, 18:17    [3012935]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
contr
Member

Откуда:
Сообщений: 1909
AI
А в качестве совсем уж побрюзжать - поучились бы виндостроители у авторов гуевого терминала юникса или линукса, работающего в юникоде без всяких дополнительных шаманистик.

т.е. берем терминал издания какого-нибудь лохматого года и имеем диагностические сообщения в юникоде? Ню-ню
cmd как утилита ничего про юникод не знает. Поэтому и надо выбирать кодовую страницу, которая будет выбирать нужный раздел юникодового шрифта.
Шрифты - одно, кодировки - немножечко другое. Замечу, что даже современные оконные приложения далеко не все умеют обрабатывать юникод. Возьмите тот же PL/SQL Developer или SQL Navigator. Ну не умеют. Надо докручивать - переводить на юникодные апишки.
Далее, cmd обеспечивает обратную совместимость с DOS, откуда и берется cp866, традиционная русскоязычная кодировка образца 80-х.
В win БГ замутил кодировку 1251, и именно эта двойственность и порождает большинство "проблем" с русским языком.
Обратите также внимание на богатое наследие текстовых файлов и скриптов в обеих НЕ-юникодных кодировках.
И отсюда же берется та самая разница между chcp и nls_lang - во втором случае sql*plus без проблем взаимодействует с остальными консольными утилитами, чего сложно добиться в случае chcp по причине существования все тех же скриптов.
И не надо рассказывать, что в линуксах этих проблем нет, ибо они общечеловеческие - Вы никогда не сможете отобразить монобайтный текст юникодным шрифтом, если не прибьете "гвоздиком" конкретную кодировку (страницу шрифта).
А уж про обратную совместимость линуховых библиотек можно сказать только одно: она полностью отсутствует. В качестве доказательства - поставьте на RHEL4 oracle 8.1.7 без набора compat-библиотек, посмеемся.
На win, обратите внимание, без проблем от NT 4.0 по Advanced Server 2003 или ХР (если не брать в расчет баги java-машины, которые именно баги, а не проявление incompatibility). Вот чему действительно стоит поучиться.
16 авг 06, 18:39    [3013067]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
AI
Member

Откуда: Москва
Сообщений: 2817
contr
AI
А в качестве совсем уж побрюзжать - поучились бы виндостроители у авторов гуевого терминала юникса или линукса, работающего в юникоде без всяких дополнительных шаманистик.

т.е. берем терминал издания какого-нибудь лохматого года и имеем диагностические сообщения в юникоде? Ню-ню
cmd как утилита ничего про юникод не знает. Поэтому и надо выбирать кодовую страницу, которая будет выбирать нужный раздел юникодового шрифта.
Шрифты - одно, кодировки - немножечко другое. Замечу, что даже современные оконные приложения далеко не все умеют обрабатывать юникод. Возьмите тот же PL/SQL Developer или SQL Navigator. Ну не умеют. Надо докручивать - переводить на юникодные апишки.
Далее, cmd обеспечивает обратную совместимость с DOS, откуда и берется cp866, традиционная русскоязычная кодировка образца 80-х.
В win БГ замутил кодировку 1251, и именно эта двойственность и порождает большинство "проблем" с русским языком.
Обратите также внимание на богатое наследие текстовых файлов и скриптов в обеих НЕ-юникодных кодировках.
И отсюда же берется та самая разница между chcp и nls_lang - во втором случае sql*plus без проблем взаимодействует с остальными консольными утилитами, чего сложно добиться в случае chcp по причине существования все тех же скриптов.
И не надо рассказывать, что в линуксах этих проблем нет, ибо они общечеловеческие - Вы никогда не сможете отобразить монобайтный текст юникодным шрифтом, если не прибьете "гвоздиком" конкретную кодировку (страницу шрифта).
А уж про обратную совместимость линуховых библиотек можно сказать только одно: она полностью отсутствует. В качестве доказательства - поставьте на RHEL4 oracle 8.1.7 без набора compat-библиотек, посмеемся.
На win, обратите внимание, без проблем от NT 4.0 по Advanced Server 2003 или ХР (если не брать в расчет баги java-машины, которые именно баги, а не проявление incompatibility). Вот чему действительно стоит поучиться.


Вы думаете, что я этого не знаю? Не надо меня стращать "лохматым годом", поскольку я говорил о современном состоянии дел и состоянии образования наших "администраторов", для которых элементарное действие с терминалом становится непосильной задачей.

И уж совсем не надо путать совместимость развитой системы типа winNT и недоразвитой, но быстро развивающейся linux. Ваше замечание, что под win плохо работают приложения в юникоде, но все легко ставится на разные версии - пример хорошей обратной совместимости ОС, но плохого развития программ для нее.

К сообщению приложен файл. Размер - 0Kb
17 авг 06, 11:05    [3014990]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
contr
Member

Откуда:
Сообщений: 1909
AI
Вы думаете, что я этого не знаю? Не надо меня стращать "лохматым годом", поскольку я говорил о современном состоянии дел
...
И уж совсем не надо путать совместимость развитой системы типа winNT и недоразвитой, но быстро развивающейся linux....
Ваше замечание, что под win плохо работают приложения в юникоде, но все легко ставится на разные версии - пример хорошей обратной совместимости ОС, но плохого развития программ для нее.

Т.е. Вы признаете как минимум две вещи:
1) Поддержка unicode сама по себе не появилась, потребовались соответствующие доработки. То есть в конечном итоге речь идет о том, что под Linux "уже докрутили терминалку" - т.е. о конкретной программе, а не о системе как таковой. Уверен, в дистрибутиве до сих пор полно не-юникодовых утилит :)
2) Что Linux - система "недоразвитая, но развивающаяся". Впрочем, в этом статусе она находится слишком много лет чтобы до сих пор верить в то, что линух все-таки "созреет" в ближайшее десятилетие :)

Что же касается "плохого развития программ" - думаю, Вы не правы. Я столь же легко приведу примеры софтинок, юникод умеющих - от текстовых редакторов до средств разработки. Тут все зависит не от системы, но от производителей конкретного ПО и их "поставщиков".
17 авг 06, 11:21    [3015086]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
AI
Member

Откуда: Москва
Сообщений: 2817
contr

Т.е. Вы признаете как минимум две вещи:
1) Поддержка unicode сама по себе не появилась, потребовались соответствующие доработки. То есть в конечном итоге речь идет о том, что под Linux "уже докрутили терминалку" - т.е. о конкретной программе, а не о системе как таковой. Уверен, в дистрибутиве до сих пор полно не-юникодовых утилит :)
2) Что Linux - система "недоразвитая, но развивающаяся". Впрочем, в этом статусе она находится слишком много лет чтобы до сих пор верить в то, что линух все-таки "созреет" в ближайшее десятилетие :)

Что же касается "плохого развития программ" - думаю, Вы не правы. Я столь же легко приведу примеры софтинок, юникод умеющих - от текстовых редакторов до средств разработки. Тут все зависит не от системы, но от производителей конкретного ПО и их "поставщиков".


1. Надо быть идиотом, чтобы утверждать, что появление юникода не потребует переделок программ. Я почему-то себя таким не считаю. Наверное, мания величия.

Но не замечать, что в юниксах поддержка юникода реализована лучше, чем под виндой - большая глупость. Примеры "софтинок" не убеждают, как только обнаруживаешь отстутствие "по определению" поддержки юникода в родных утилитах операционки. Это и есть хорошая совместимость, но плохое развитие.

2. Windows развивалась много дольше линукса. К тому же начиналась не как студенческий проект, а как коммерческая ОС, разрабатываемая большим количеством грамотных и опытных специалистов. Сейчас она достигла, в определенном смысле, совершенства и ее развитие сильно затормозилось. Достаточно посмотреть на времена выхода версий и сравнить количество новых особенностей.
17 авг 06, 11:48    [3015345]     Ответить | Цитировать Сообщить модератору
Между сообщениями интервал более 1 года.
 Re: Крякозябры в SQLPlus  [new]
mayton
Member

Откуда: loopback
Сообщений: 49721
contr
Что же касается "плохого развития программ" - думаю, Вы не правы. Я столь же легко приведу примеры софтинок, юникод умеющих - от текстовых редакторов до средств разработки. Тут все зависит не от системы, но от производителей конкретного ПО и их "поставщиков".


Linux-ового софта, связанного с наукой почему-то чрезвычайно мало. Это удивляет т.к. основная целевая аудитория пользователей Линукс - университеты.

Как-то я иcкал ПО для моделирования работый нейронных сетей. Для примера, если взять список доступного софта из книги Борисова и Круглова, то можно с удивлением отметить, что 99% софта создано под Windows.
21 июл 08, 11:52    [5962406]     Ответить | Цитировать Сообщить модератору
 Re: Крякозябры в SQLPlus  [new]
Katika
Member

Откуда:
Сообщений: 1
помогите и мне. у меня стоит сейчас nls_lang=american_cis.UTF8, Toad грузиться, но вместо русских букв иероглифы!
21 июл 08, 13:46    [5963300]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить