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

Вниз

Для гуру 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;
Скачать: [xml.tar.bz2];

Наверх















Память: 0.81 MB
Время: 0.027 c
1-42494
Stexen
2001-12-25 20:42
2002.01.14
ПО-МОЕМУ интересный вопрос


3-42372
TSV
2001-12-12 12:39
2002.01.14
Скроллинг мыши в DBGrid - продолжение


4-42613
Karan
2001-11-14 14:19
2002.01.14
DLL<->Variant


3-42369
Softmaster
2001-12-11 20:14
2002.01.14
Проблема с группировкой в отчете при использовании QReport


4-42638
Jazzy$
2001-11-10 23:17
2002.01.14
Фокус ввода.





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский