Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2007.04.01;
Скачать: CL | DM;

Вниз

Оператор UPPER   Найти похожие ветки 

 
O.O   (2007-01-08 07:29) [0]

В условии выборки WHERE оператора SELECT использую такую вот конструкцию для регистронезависимой контекстной  выборки:

UPPER(NAME) LIKE ""%" + AnsiUpperCase(E_Context.Text) + "%"""

Всё бы хорошо, да только это не срабатывает при поиске маленьких букв "ё". Причём если есть в названии большие "Ё" то они прекрасно находятся. Делаю вывод, что AnsiUpperCase ведёт себя адекватно, а UPPER нет.
Вопрос: какой способ регистронезависимой контекстной выборки можно применить чтоб буквы "ё" нормально участвовали в нём?


 
_RusLAN ©   (2007-01-08 11:30) [1]

Пропробуйте явно указать кодировку с помощью Collate в запросе или в столбце таблицы


 
try   (2007-01-08 13:43) [2]

http://www.ibase.ru/devinfo/ibfaq.htm#1.1


 
O.O   (2007-01-09 06:19) [3]

Collate в столбце таблицы пробовал и WIN1251 и PXW_CYRL
- не помогает, а как непосредственно в запросе указать?


 
Desdechado ©   (2007-01-09 12:00) [4]

SELECT UPPER( obj_name collate win1251 ) from objnames


 
O.O   (2007-01-10 09:41) [5]


> Desdechado ©   (09.01.07 12:00) [4]

Заменил на

UPPER(NAME collate win1251) LIKE ""%" + AnsiUpperCase(E_Context.Text) + "%"""

сработало правильно. Непонятно почему неправильно работает первый вариант, ведь свойство Collate поля NAME у него стоит правильно, win1251 ?


 
atruhin ©   (2007-01-10 18:56) [6]

Ну во первых не указанны компоненты доступа.
Кодировка должна быть указана, и быть одинаковой:
в БД, таблице и в компонентах доступа, тогда все работает.
В таблице вроде можно не указывать, не помню.


 
O.O   (2007-01-11 08:34) [7]

Обслуживаю базу с помощью IBExpert
В общих параметрах базы поле "Кодировка" недоступно
В поле "Набор символов экранного шрифта" выбрано RUSSIAN_CHARSET

В Param IBDatabase у меня так:
user_name=SYSDBA
password=*****
lc_ctype=WIN1251

Для выборки использую компонент IBSql. Как в нём указать кодировку?
Так же как в IBDatabase?



Страницы: 1 вся ветка

Текущий архив: 2007.04.01;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.044 c
3-1168319296
Loginov Dmitry
2007-01-09 08:08
2007.04.01
Медленно изменяются записи при включенном CachedUpdates


4-1163658294
Out
2006-11-16 09:24
2007.04.01
Убийство процесса


2-1173033268
AMW
2007-03-04 21:34
2007.04.01
Как возвратить строку из dll без ShareMem?


2-1173179877
Marat
2007-03-06 14:17
2007.04.01
читаю файл


2-1173091442
Магедон
2007-03-05 13:44
2007.04.01
Вопрос о маленьком почновом клиентике.