|
Не работает UPPER() с русскими буквами в IB6
|
|||
---|---|---|---|
#18+
Не работает функция UPPER() с русскими буквами в IB6 Подскажите, пожалуйста, как решить эту проблему. ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2002, 11:38 |
|
Не работает UPPER() с русскими буквами в IB6
|
|||
---|---|---|---|
#18+
Обычно достаточно UPPER(<FieldName> COLLATE PXW_CYRL) если win1251 у поля ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2002, 12:07 |
|
Не работает UPPER() с русскими буквами в IB6
|
|||
---|---|---|---|
#18+
А если не win1251? И можно ли сменить charset для таблицы(поля), если можно, то как ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2002, 18:43 |
|
Не работает UPPER() с русскими буквами в IB6
|
|||
---|---|---|---|
#18+
Можно создать новое поле, скопировать данные из старого в новое, старое удалить, новое переименовать :-). ... |
|||
:
Нравится:
Не нравится:
|
|||
25.11.2002, 20:38 |
|
Не работает UPPER() с русскими буквами в IB6
|
|||
---|---|---|---|
#18+
Ты уверен, что там чарсет не win1251? в IB6 есть ALTER COLUMN вроде, им и воспользуйся, либо можно в системных таблицах поправить ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2002, 11:12 |
|
Не работает UPPER() с русскими буквами в IB6
|
|||
---|---|---|---|
#18+
Вобще-то разные в разных кодировках на символ разное кол-во байт выделяется. Так что, теоретически, могут быть проблемы со сменой кодировок. ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2002, 12:29 |
|
Не работает UPPER() с русскими буквами в IB6
|
|||
---|---|---|---|
#18+
RE: ALL Всем большое спасибо за помощь! Я решил эту проблему следующим образом: Создал аналогичную БД c default charset win1251 символьным полям задал COLLATE PXW_CYRL (может и не надо было) запрос типа: SELECT * FROM <table> WHERE UPPER(<field>) like '<value>' (ежели <value> состоим из русских букв, то выдается ошибка: Arithmetic exception, numeric overflow, or string truncation Cannot transliterate character between character sets) надо делать так: SELECT * FROM <table> WHERE UPPER(<field>) like _win1251 '<value>' ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2002, 12:36 |
|
Не работает UPPER() с русскими буквами в IB6
|
|||
---|---|---|---|
#18+
Ну насчет того, что ты сразу задал COLLATE - это зря, в PXW_CYRL берется 3 байта на символ, а применение практически только UPPER, в котором collation order можно задать в любой момент (как написано) НАсчет же того, что не может конвертировать между чарсетами - так просто при коннекте надо было указать charset как win1251 ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2002, 18:06 |
|
Не работает UPPER() с русскими буквами в IB6
|
|||
---|---|---|---|
#18+
Была та же проблема. Класс! Поставил - UPPER(<FieldName> COLLATE PXW_CYRL) и все заработало! ... |
|||
:
Нравится:
Не нравится:
|
|||
26.11.2002, 23:22 |
|
|
start [/forum/topic.php?fid=40&msg=32072758&tid=1581056]: |
0ms |
get settings: |
7ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
52ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
3ms |
others: | 11ms |
total: | 147ms |
0 / 0 |