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

Вниз

UPPER не работает с русскими буквами   Найти похожие ветки 

 
abhtr   (2008-12-09 16:51) [0]

В запросе использую UPPER:
select *
from Prdca
where UPPER(Prdca_index) = UPPER("проба")
но она с английскими буквами работает, а с русскими - нет.
Работаю с FireBird 1.5.
Как можно сделать преобразование в верхний регистр?


 
Правильный$Вася   (2008-12-09 17:18) [1]

COLLATE
CHARACTER SET
F1


 
abhtr   (2008-12-09 17:52) [2]


> Правильный$Вася  

Да, все правильно.
Для всей базы стоит NONE, и для таблицы для полей VarChar стоит NONE.
Попробовал поменять. Вроде бы - поменялось.
Но запрос все равно не работает.
Может надо теперь и все данные "переконвертировать"?


 
clickmaker ©   (2008-12-09 18:09) [3]

а там не работает что-то типа
UPPER(cast Prdca_index as varchar collate cyrillic_или_как_оно_там_в_FB)?


 
Johnmen ©   (2008-12-09 18:56) [4]

http://www.ibase.ru/devinfo/ibrusfaq.htm


 
abhtr   (2008-12-10 09:48) [5]

Вариант
UPPER(cast Prdca_index as varchar collate WIN1251)
дает ошибку останавливая курсор на cast, а пишет Prdca_index

Вариант, который взят из статьи
where upper(Prdca_index COLLATE WIN1251)  = "Л3134"
пишет сообщение об ошибке:
Arithmetic overflow or division by zero has occurred.
arithmetic exception, numeric overflow, or string truncation.
Cannot transliterate character between character sets.


 
abhtr   (2008-12-10 10:30) [6]

Попробовал создать новую базу, в которой сразу указал кодировку win1251.
И все равно :о(((
Простой запрос
       select upper("фыппав")
         from Prdca
выдает теже буквы в нижнем регистре.
Т.е. не работает upper.
Может это потому, что базу я создаю как FireBird 1.5, но на компьютере, где все это работает стоит InterBase 6.5 ?


 
Правильный$Вася   (2008-12-10 10:54) [7]


> базу я создаю как FireBird 1.5, но на компьютере, где все
> это работает стоит InterBase 6.5

не удивительно, резьба у шурупов и болтов разная


 
9899100   (2008-12-10 11:03) [8]

я чтобы не мучаться с такими проблеммами всегда записи заполняю заглавными буквами
а в программе немного изменяю при выводе
например поле ФИО в базе ИВАНОВ ИВАН ИВАНОВИЧ
а пользователю выдаю Иванов Иван Иванович

получается конечно немного медленнее при отображении
но ведь пользователю реально не надо сразу перед собой видеть все записи базы
ему достаточно сделать выборку


 
abhtr   (2008-12-10 11:12) [9]

Компьютер у заказчика слабоват.
Насколько FireBird 1.5 требует больше ресурсов чем InterBase 6.5?


 
abhtr   (2008-12-10 11:14) [10]


> я чтобы не мучаться с такими проблеммами всегда записи заполняю
> заглавными буквами

Я тоже об этом думаю, но как-то вроде не очень красиво само решение :о)
Что-то есть в этом решении пере... пере...


 
Sergey13 ©   (2008-12-10 11:20) [11]

> [9] abhtr   (10.12.08 11:12)
> Насколько FireBird 1.5 требует больше ресурсов чем InterBase 6.5?

На 2.

> [10] abhtr   (10.12.08 11:14)
> Я тоже об этом думаю
Для полей типа твоего Prdca_index вполне ИМХО нормальное решение. Для полей типа ФИО мне кажется это лишним.


 
abhtr   (2008-12-10 11:28) [12]


> Для полей типа твоего Prdca_index вполне ИМХО нормальное
> решение

Согласен.
Останавливаюсь на этом варианте.
Всем upper("спасибо")   :о)


 
Sergey13 ©   (2008-12-10 11:35) [13]

> [12] abhtr   (10.12.08 11:28)
> Останавливаюсь на этом варианте.

Но разобраться с upper и с зоопарком серверов все-таки желательно, ИМХО. Иначе придется, возможно, еще не раз обходить (а не решать) проблемы. Самое обидное, что выявляться они могут как угодно поздно.


 
Правильный$Вася   (2008-12-10 11:45) [14]


> разобраться с upper и с зоопарком серверов все-таки желательно

хотя бы потому, что и сортировки тоже используют признаки [1]


 
abhtr   (2008-12-10 12:17) [15]


> Но разобраться с upper и с зоопарком серверов все-таки желательно

Согласен. Конечно, я и базу решил разрабатывать под FireBird с учетом перехода на FireBird, только все откладывал на потом.
Так что будем решать...
Еще раз спасибо за советы.


 
_guest_   (2008-12-26 13:18) [16]

Понимаю, что поезд ушел, но сам сталкнулся с такой же проблемой: Upper не работает с русскими буквами. FB у меня 2.1, других серверов нет, но добиться чтбы Upper заработал так и не удалось. Очевидно таков FB.


 
Johnmen ©   (2008-12-26 13:35) [17]


> Очевидно таков FB.

Очевидно, надо-таки читать документацию...


 
Правильный$Вася   (2008-12-26 14:01) [18]


> _guest_   (26.12.08 13:18) [16]

читать надо сначала
[1]
и выводы делать

> Очевидно таков FB.

кто хочет, ищет способы, кто не хочет - причины



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

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

Наверх




Память: 0.51 MB
Время: 0.011 c
2-1230027493
Slav
2008-12-23 13:18
2009.02.08
Добавить текст на изображение JPEG


2-1230394998
Te
2008-12-27 19:23
2009.02.08
!!!


15-1228915193
Саша
2008-12-10 16:19
2009.02.08
Сетап не видит хард, но комп загружается.


2-1230528308
charoey_mag
2008-12-29 08:25
2009.02.08
Доступ к AD через ADO


2-1230282144
_guest_
2008-12-26 12:02
2009.02.08
не работает MaxLength в ValueListEditor