Форум: "Базы";
Текущий архив: 2002.05.27;
Скачать: [xml.tar.bz2];
ВнизНемогу создать уникальный индекс в IB Найти похожие ветки
← →
Ura (2002-04-30 10:45) [0]Поле 50 символов и второе поле тоже 50 сивмолов, а индекс нужен по этим двум полям. Что делать? Кто виноват Я или ...?
← →
Johnmen (2002-04-30 10:50) [1]1. Что делаешь ?
2. Какая ошибка вылазит ?
← →
Ura (2002-04-30 11:03) [2]В таблице два поля varchar 50. Создаю иникальный индекс в IBEXpert он и говорит.
This operation is not defined for system tables.
unsuccessful metadata update.
key size too big for index RDB$10.
← →
Alexandr (2002-04-30 11:10) [3]collate для этих полей задано?
← →
Ura (2002-04-30 11:16) [4]collate - Незадано.
← →
Johnmen (2002-04-30 11:20) [5]Вот у меня все создается ! ( юзаю ISQL из IBConsole)
← →
Ura (2002-04-30 11:22) [6]Понял - проблема у меня...
← →
kaif (2002-04-30 13:14) [7]Индексы, общей длиной более ~80 символов при использовании WIN1251 и соответствующего COLLATE не получаются. При ASCII кодировке получаются раза в 3.
Уменьши поля до 40 символов.
← →
Anatoly Podgoretsky (2002-04-30 13:19) [8]84 символа
← →
Ura (2002-04-30 15:10) [9]Сделал 2 поля Vrachar - 40 символов WIN1251 collate PXW_CYRL - по ним тоже не создаеться
This operation is not defined for system tables.
unsuccessful metadata update.
key size too big for index RDB$PRIMARY12.
Т.е. с collate нельзя совсем сделать индекс?
← →
Johnmen (2002-04-30 15:16) [10]Как создана таблица ? Приведи ...
← →
Ura (2002-04-30 15:22) [11]CREATE TABLE NEW_TABLE (
"t1" VARCHAR(40) COLLATE PXW_CYRL,
"t2" VARCHAR(40) COLLATE PXW_CYRL);
// Код IBExpert
Создаю индекс t1+t2 и облом :-(
← →
Johnmen (2002-04-30 15:31) [12]Последний вопрос - а как пытаешься создать индекс ?
← →
Ura (2002-04-30 15:34) [13]create unique index NEW_TABLE_IDX1
on NEW_TABLE ("t1","t2")
← →
Johnmen (2002-04-30 15:39) [14]Меня очень смущают вот эти вот кавычки " .....
← →
Ura (2002-04-30 15:44) [15]Переделал названия в верхиний регистр - индекс делаеться теперь так - но эффект тотже...
create unique index NEW_TABLE_IDX1
on NEW_TABLE (T1,T2)
← →
Johnmen (2002-04-30 15:53) [16]Ну конечно же !!!!
При создании надо указать not null !
← →
Ura (2002-04-30 15:57) [17]CREATE TABLE NEW_TABLE (
T1 VARCHAR(40) NOT NULL COLLATE PXW_CYRL,
T2 VARCHAR(40) NOT NULL COLLATE PXW_CYRL);
create unique index NEW_TABLE_IDX1
on NEW_TABLE (T1,T2)
This operation is not defined for system tables.
unsuccessful metadata update.
key size too big for index NEW_TABLE_IDX1.
Не помогло и not null...
← →
Johnmen (2002-04-30 16:04) [18]Тогда поэкспериментируй....
для начала убери COLLATE PXW_CYRL...
← →
Desdechado (2002-04-30 16:44) [19]COLLATE PXW_CYRL съедает 3 байта на символ
максимальная индексируемая строка ~256 байт (точно не помню)
т.о. (40+40)*3=240 - должно влезать
← →
Ura (2002-04-30 18:02) [20]Скажите где про это написано. Т.е. про индексы их мах длины и влияние COLLATE на длину. ФАКТ - неработает...
← →
Mich (2002-04-30 20:33) [21]На http://www.ibase.ru/ скачай прогу EMS QuickDesk 2.0 она бесплатная, это конструктор для создания и работы с IB
← →
Anatoly Podgoretsky (2002-04-30 20:43) [22]Ura (30.04.02 18:02)
В документации с ib server, не помню только в какой книге, указано 84
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2002.05.27;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.005 c