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

Вниз

Для гуру IB   Найти похожие ветки 

 
Long   (2001-12-10 17:01) [0]

Для начала выжимка из скрипта (База данных IB в третьем диалекте):

.....
CREATE DOMAIN "STR120" AS
VARCHAR(120) CHARACTER SET WIN1251
COLLATE PXW_CYRL ;
.......
CREATE TABLE CLIENT (
........
CLNTNAME STR120,
.......

При попытке создать индекс по этому полю вываливается ошибка о слишком
большой длине ключа
(видимо сказывается юникодовская кодировка).
Из определения домена убрал COLLATE PXW_CYRL, индекс создался без вопросов.
После этого изменяю домен, добавляю COLLATE PXW_CYRL и ..... о чудо ошибок
нет. Но только не понятно, как теперь это все будет работать ? Как надо мне
(т.е. правильно и с сортировкой символов по PXW_CYRL) или как захочется
системе ?


 
Romkin ©   (2001-12-10 18:42) [1]

Индекс в IB создается длиной не более 200 байт, если не ошибаюсь (ну около этого). Коллатион PXW_CYRL сразу берет 3 байта на символ.
Скорее всего, то, что прошло изменение домена - глюк IB6. Работать скорее всего будет, но до первого restore, который не пройдет (выдаст ошибку при создании индекса). Так что советую не рисковать.
PXW_CYRL используется практически только для UPPER либо containing.
Практически в любом случае хранить непосредственно данные в этом сравнивании особого смысла не имеет, тем более создавать индекс.



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

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

Наверх




Память: 0.46 MB
Время: 0.008 c
7-42577
Максим
2001-10-01 10:44
2002.01.14
Железо и софт


1-42454
@leche
2001-12-24 21:04
2002.01.14
Как реализуется цвет в строке RichEdit или RxRichEdit ???


1-42486
GreySerg
2001-12-20 17:44
2002.01.14
Как создать Ole обьект вручную,т.е. не используя tlb файл, без регистрации?


1-42407
Dmitry_O
2001-12-23 19:49
2002.01.14
изменение языка


7-42584
Leon
2001-08-23 22:17
2002.01.14
Серийный номер материнской платы