Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2009.02.08;
Скачать: [xml.tar.bz2];

Вниз

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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.48 MB
Время: 0.006 c
2-1229960849
Sairex
2008-12-22 18:47
2009.02.08
Запамятовал... как из реестра удалить парамметр?


11-1197209759
nikfel
2007-12-09 17:15
2009.02.08
Запрет закрытия формы.


4-1204707100
alexnov
2008-03-05 11:51
2009.02.08
Как получить инфу о модели монитора без дров для него?


15-1228754430
ваще
2008-12-08 19:40
2009.02.08
TDataSet работающий с текстовыми файлами.


8-1190348540
BAHO_KEX
2007-09-21 08:22
2009.02.08
Как добавить в ListBox имена файлов





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский