![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Upper в Interbase [D7, IB6.x]
Seven © (2003-05-05 06:54:00)Этот вопрос уже задавался,
но ни один из ответов не принес желаемого результата.
А проблема такая: upper в запросах IB не работает с русскими буквами. На сайте ibase.ru то же был, но красивого решения не
нашел. Может у кого то есть действительный опыт борьбы с upper.
Какую кодировку нужно устанавливать для поля таблицы, к которому применяется Upper.
Спасибо за внимание
Desdechado (2003-05-05 16:48:00) [1]IBConsole тоже с кодировками глючит
возьми, например, IBExpert
Zacho (2003-05-05 16:47:00) [2]
> Seven (05.05.03 15:34)
То, что "мой IB6.0 не дает вставить в поле ни одного русского
символа" - это баг именно консоли, а не IB. А вообще, IB 6.0 - глюкотень еще та. Настоятельно рекомендую перейти на FB или Yaffil.
Seven (2003-05-05 15:34:00) [3]Всем спасибо,
думаю, что теперь проблему решу, так как вариантов
исследования больше чем достаточно
PS: работаю через IBX,
а все запросы тестировал в IB_Console,
наверно стоит действительно
попробывать поставить другу версию IB
Avreliy (2003-05-05 15:30:00) [4]Я использую FireBird 1.0.2. Кодировку указывал толькопри создании БАЗЫ. В IB Eхpert"е пробывал испльзовать UPPER с COLLATE PXW_CYRL - всё работает. Если запрос создаётся посредством использования BDE - попробуй в свойствах псевдонима БД присвоить параметру LANGDRIVER значение Pdox ANSI Cyrillic.
Карелин Артем (2003-05-05 15:17:00) [5]Короче на всех этапах работыуказывай русскую кодировку. При создании базы, при добавлении полей, при настройке соединения с базой в дельфине....
Seven (2003-05-05 15:10:00) [6]Наталия:
Может быть у меня ручки кривоваты,
но такой простой запрос:
Select
upper(name COLLATE PXW_CYRL)
from
company
или такой
Select
upper("я" COLLATE PXW_CYRL)
from
company
Вызывает след. ошибку
Cannot transliterate character between character sets
Statement: Select
upper(name COLLATE PXW_CYRL)
from
company
Таблица company содержит русские названия компаний
Карелин Артем (2003-05-05 15:07:00) [7]Seven (05.05.03 15:01)
Значит IB у тебя глючный. На 4.2, 6.1, FireBird, Yaffil нормально работаетCHARACTER SET WIN1251
COLLATE WIN1251
Alexandr (2003-05-05 15:04:00) [8]читать
http://www.ibase.ru/devinfo/ibrusfaq.htm
до полного прояснения.
(в том числе про параметры подключения)
Соловьев (2003-05-05 15:04:00) [9]
> то мой IB6.0 не дает вставить в поле ни одного русского
>
> символа
а как ты подключаешся?
в параметрах TDatabase есть lc_ctype=WIN1251?
Seven (2003-05-05 15:01:00) [10]Zacho: Если задавать для полей charset win1251,
то мой IB6.0 не дает вставить в поле ни одного русского
символа
Zacho (2003-05-05 12:08:00) [11]А какой результат желаемый ?
Все просто - или задаешь для полей charset win1251 и в запросах используешь COLLATE PXW_CYRL или charset none и UPPER из UDF.
В чем, собственно, проблема ?
Desdechado (2003-05-05 10:49:00) [12]в UDF тяжеловато встроить все кодировки, поддерживающие кириллицу. Но если в БД используется только одна, то все просто.
Rad (2003-05-05 07:15:00) [13]Ну как это не нашел красивого решения?
На том же IBase ( http://www.ibase.ru/devinfo/ibrusfaq.htm) есть про применение кодировок более чем подробно.
А я вот лично использую UDF RFunc ( http://www.ibase.ru/d_udf.htm) - и тоже без всяких проблем (в том числе, с кодировками полей, базы т.д.)
Наталия (2003-05-05 07:10:00) [14]...upper("Cевен" COLLATE PXW_CYRL)=...