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

Вниз

Не могу создать/добавить индекс в Firebird!!!   Найти похожие ветки 

 
Sergant ©   (2002-10-06 05:00) [0]

Есть таблица, состоящая всего из двух полей. Создаю ее так:
CREATE TABLE SPISOK (
NAZ VARCHAR (8) character set WIN1251 collate PXW_CYRL,
FIO VARCHAR (255) character set WIN1251 collate PXW_CYRL);
Cоздаю индекс по полю NAZ:
CREATE INDEX IDX_NAZ ON SPISOK (NAZ) - все нормально,
пытаюсь создать индекс по полю FIO:
create index idx_fio on spisok (fio)- пишет следующее:
"This operation is not defined for system tables.
unsuccessful metadata update.
key size too big for index IDX_FIO."
В чем моя ошибка?


 
Prooksius ©   (2002-10-06 10:41) [1]

Да потому что с collate индексы могут создаваться для полей не более 83 (на сколько я помню) символов.
читай www.ibase.ru


 
Desdechado ©   (2002-10-06 20:34) [2]

длина индексируемого ключа - 255 байт, а у тебя поле 255 символов (в зависимости от COLLATE 2-3 байта на символ). Вот и суди.


 
Johnmen ©   (2002-10-07 09:35) [3]

А вот интересно, что это за фамилии, имена и отчества, суммарная длина которых может достигать 255 ???
:-)))))))))))))))))))))))))))))))))))))))))))


 
Prooksius ©   (2002-10-07 10:03) [4]

Ну максимум 100 на ФИО, хотя тоже много.
Раздели фамилию, имя и отчество на отдельные поля. Так легче.



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
4-92782
VannO
2002-09-14 17:05
2002.10.28
Отключение монитора


1-92607
mafiya
2002-10-17 10:43
2002.10.28
Информация о CD-ROM диске


14-92677
Кот Бегемот
2002-10-07 17:47
2002.10.28
СРОЧНО!!! Кто из Харькова ???


14-92650
Jumbot
2002-10-06 15:11
2002.10.28
Посоветуйте программу для очистки реестра


1-92593
dim-
2002-10-16 22:48
2002.10.28
Как определить, что ListView был изменен