Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Проблема с сортировкой в ODAC [D6, Oracle]


Andrew_ ©   (2002-08-21 17:00:00) 

Господа! Есть проблема, при выводе запроса с сортировкой по строковому полю, сортировка происходит неправильно.
ТТХ: Oracle9 на Linux, клиент на Win98/2000 на Delphi 6. Использую компоненты ODAC, связь НЕ через клиента, а напрямую с Ораклом. Сортировка на сервере происходит, но в KOI, на клиенте транслируется в виндовую кодировку, но сортировка остается от KOI, в результат буква Ф идет после Б и.т.д. Может кто сталкивался? Лечится?
Спасибо.


hCat   (2002-08-26 18:15:00) [1]

Сортировку заказывает клиент и далее IMHO если на оракле установлена соответствущая кодировка, то она выполняется, а если нет, то используется кодировка сервера по умолчанию. Один из признаков триальности сервера - нет возможности перекодировок.
Попробуй:
1. alter session set nls_sort=[BINARY|RUSSIAN|AMERICAN]
очень рекомендую alter session set nls_sort=BINARY при использовании стандартных компонент. НапримерTTable в D3 очень не любил лингвистических сортировок
2. На клиенте в ветке HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0 проверить значение NLS_LANG=RUSSIAN_CIS.CL8MSWIN1251


Наверх

Титульная страница Поиск, карта сайта Написать письмо