Добро пожаловать, Гость
Логин: Пароль: Запомнить меня
Администрирование Oracle Database:
- Установка и настройка базы данных
- Обновление, применение патчей
- Оптимизация, настройка производительности
- Обучение, подготовка персонала, оптимизация
  • Страница:
  • 1
  • 2

ТЕМА:

Re: Oracle: SQL NAVIGATOR 4.1 и русские буквы 12 года 6 мес. назад #3458

Логика проста. Dual - фиктивная таблица, можешь почитать о ней в доках к Oracle. Выбрать 'русский' из dual - означает, что нужно просто вывести указанное в select'е значение, то есть 'русский'.
Аналогично, если написать

select sysdate from dual;


будет выведено текущяя системная дата.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Oracle: SQL NAVIGATOR 4.1 и русские буквы 12 года 6 мес. назад #3459

Логика запроса очень простая -- когда одну и ту же проблему решаешь в сотый раз, то точно знаешь, что 99% случаев это либо кривой NLS_LANG, либо кривая системная локаль, или кривые шрифты, либо всё-таки само приложение.
Зная, что SQL NAVIGATOR 4.1 умеет правильно работать с русским в обе стороны, то он из списка подозреваемых исключается.
Далее отсекаем вариант с NLS_LANG, точнее его несовпадением. Так как в описании был упомянуто, как выглядит результат двойного преобразования (клиент-сервер-клиент) "?onneee", то достаточно отсечь наиболее частый вариант -- те самые "NA". Для этого со стороны клиента на сервер передаём строку, которой никакой NLS_LANG не страшен, зато обратно ждём "красную тряпку для быка" -- букву "я", или символ с кодом 255.
А далее, если NLS_LANG не причём, то мы увидим "крякозяблицу", точнее символ который в текущем шрифте соответствует символу с кодом 255...

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Oracle: SQL NAVIGATOR 4.1 и русские буквы 12 года 6 мес. назад #3460

У меня (после изменения в реестре ВСЕХ NLS_LANG на RUSSIAN_CIS.CL8MSWIN1251) все равно SQL Navigator пишет крокозяблики в окне сообщения об ошибках.

Например, при NLS_LANG=RUSSIAN_CIS.CL8MSWIN1251:
(1): PLS-00103: Âñòðåòèëñÿ ñèìâîë "TH" â òî âðåìÿ êàê îæèäàëîñü îäíî èç ñëåäóþùèõ:
(1):
(1): := . ( @ % ;
(1): Ñèìâîë ":=" çàìåíåí íà "TH", ÷òîáû ìîæíî áûëî ïðîäîëæàòü.

то же при NLS_LANG=AMERICAN_AMERICA.CL8MSWIN1251
(1): PLS-00103: Encountered the symbol "TH" when expecting one of the following:
(1):
(1): := . ( @ % ;
(1): The symbol ":=" was substituted for "TH" to continue.

В самом SQL Navigatore (Preferences) выставлено Cyrillic в шрифтах, но крокозяблы остались.

Шрифт в окне вывода сообщений об ошибках вроде бы Tahoma;
по адресу HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes его нет (идут System,0 затем Times).
Ручное его добавление туда не помогло.

Куда копать, скажите

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Oracle: SQL NAVIGATOR 4.1 и русские буквы 12 года 6 мес. назад #3461

Обычно этого хватает, скопируй в файл с расширением .reg и выполни:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Nls\CodePage]
"1250"="c_1251.nls"
"1251"="c_1251.nls"
"1252"="c_1251.nls"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontMapper]
"ARIAL"=dword:000000cc
"DEFAULT"=dword:000000cc

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\FontSubstitutes]
"PROMT Helv Cyr,0"="PROMT Helv Cyr,204"
"Arial,0"="Arial,204"
"Times New Roman,0"="Times New Roman,204"
"Lucida Console,0"="Lucida Console,204"
"System,0"="System,204"
"Fixedsys,0"="Fixedsys,204"
"Small Fonts,0"="Small Fonts,204"
"MS Serif,0"="MS Serif,204"
"MS Sans Serif,0"="MS Sans Serif,204"
"Courier,0"="Courier New,204"
"Arial Cyr,0"="Arial,204"
"Courier New Cyr,0"="Courier New,204"
"Times New Roman Cyr,0"="Times New Roman,204"
"Helv,0"="MS Sans Serif,204"
"Tms Rmn,0"="MS Serif,204"
"Courier New,0"="Courier New,204"
"Tahoma,0"="Tahoma,204"


После чего перезагрузись.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Oracle: SQL NAVIGATOR 4.1 и русские буквы 12 года 6 мес. назад #3462

Спасибо за очень полезный совет! У меня и Erwin и BPWin теперь русские тексты правильно показывает.

Вот только Word сволочь стал на слова с немецкими умляутами ругаться, хотя они и правильные:-(Наверное это проблема не решаема - либо то, либо другое. Може кто что-нибудь посоветует?

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

Re: Oracle: SQL NAVIGATOR 4.1 и русские буквы 12 года 6 мес. назад #3463

Может это из-за того, что был поправлен CodePage "1252" на "c_1251.nls". Для того же ERwin'а обычно хватало правки FontMapper и FontSubstitutes. А CodePage - это уже контрольный выстрел, чтобы наверняка:)Верни его обратно, может умляуты перестанут ругаться, к сожалению, сам проверить пока не могу.

Пожалуйста Войти или Регистрация, чтобы присоединиться к беседе.

  • Страница:
  • 1
  • 2
Время создания страницы: 0.211 секунд