Вниз
Скачать: CL | DM;

Как подловить индекс?   Найти похожие ветки 

 
cutter-pro   (2002-10-31 16:02) [0]

Завязал, значит, я вчера две таблицы: главная и подчиненная в отношении один ко многим и столкнулся с такой вот проблемой:
При попытке добавления новой записи в подчиненную таблицу выдается следующее сообщение об ошибке:

Ошибка EDBEngineError с сообщением "Index is read only"...

Кто знает - че с этим делать, как побороть эту гадость?


 
Anatoly Podgoretsky ©   (2002-10-31 16:07) [1]

У тебя база есть?


 
Johnmen ©   (2002-10-31 16:08) [2]

Какие ключи и индексы в подчиненной ?
Как добавляется ?
Какой тип БД ?
М.б. для добавляемой записи нет соотв-ей в главной...


 
MsGuns ©   (2002-10-31 16:17) [3]

>Johnmen © (31.10.02 16:08)
>М.б. для добавляемой записи нет соотв-ей в главной...

.. или ключ связки с Мастером пустой (NULL) на Мастере


 
cutter-pro   (2002-10-31 16:32) [4]

Type ... Key
Главная таблица: TN N *
(Table1) NAME A
Подчиненная: TN N
(Table2) Myday N
В подчиненной таблице с помощью "Secondary indexes" определен индекс tn_ind для поля TN.
Table2.MasterSource <-> DataSource1
где DataSource1 завязан на Table1
Table2.MasterFields <-> TN
Table2.IndexName <-> tn_ind


 
cutter-pro   (2002-10-31 16:33) [5]

Добавляю записи в DBGrid.


 
cutter-pro   (2002-10-31 16:42) [6]

Да, еще забыл, таблицы типа Paradox 7


 
cutter-pro   (2002-10-31 17:38) [7]

Мой вопрос неинтересен для мастеров или слишком глупый для логичного ответа?


 
MsGuns ©   (2002-10-31 17:49) [8]

В таблице Table1 TN определен как PRIMARY KEY (PK), а в детале Table2 у тебя имеется поле TN, определенное как индекс, связанное отношением Master<>Detail с Table1. И других полей в индексе нет !. Т.е. у тебя типичное отношение "Один к одному". При такой ситуации невозможно на детале удаление или вставка, только изменение, причем не ключа (индекса) !

Если надо сделать отношение Один-ко-многим в детале надо определить как минимум еще одно поле как ключевое и добавить его в индекс tn_ind.

Хотя если эти таблы связаны "по жизни" (типа мастер - это список челов, а детал, это, например, данные о составе семьи каждого чела), то в детале также надо определять TN и MemberID как PRIMARY KEY. Тогда все свяжется и будет нормально работать.


 
cutter-pro   (2002-10-31 18:39) [9]

2MSGuns Большое спасибо! Попробую, но уже дома (ночью:). Если че не получится спрошу снова:)



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

Скачать: CL | DM;



Память: 0.47 MB
Время: 0.011 c
4-69648
chsv
2002-10-09 19:19
2002.11.21
неприятное мерцание экрана при изменении положения окон SDI прило


4-69640
Pavel-ak
2002-10-11 11:42
2002.11.21
поможите пожалуюста , сам бы да примерчик засеял ...


3-69132
amik
2002-10-31 09:25
2002.11.21
Получение данных из blob-поля типа Memo


1-69348
Cranium
2002-11-13 01:12
2002.11.21
Работа с LPT. В D3 все работало, а в D5 ругается, вот пример кода


1-69358
Guest2
2002-11-12 19:45
2002.11.21
Как проверить завершение процесса из своей проги?




   Наверх