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

Вниз

Связывание таблиц в interBase   Найти похожие ветки 

 
Delphinium ©   (2003-01-08 20:41) [0]

Уважаемые мастера!!!
У меня две связанные таблицы в InterBase - главная и дочерняя
(связь - один ко многим). Сначала я сделал связь так (ComingD - дочерняя):
Alter table ComingD Add Foriegn Key (Number) References Coming (Number)
On Delete Cascade On Update Cascade.

Но однин этот способ таблицы не связал.
Тогда я дополнительно связал их через Query дочерней таблицы:
В свойстве DataSource указал родительский DataSource, а в свойстве SQL след.: Select * from ComingD Where (Number=:Number).
Это нормально связало таблицы. Но обнаружилось, что когда я вставляю новую запись в главную таблицу, я сразу же не могу вставить запись в дочернюю, а только после Commit (в противном случае виснет). Но после
Commit необходимо переоткрывать таблицу, что мне не нравится.
Есть ли выход из ситуации? И еще: в дочерней таблице после Insert не вставляется автоматом ключевое поле, приходиться делать это вручную.
Спасибо!


 
drpass ©   (2003-01-08 21:30) [1]

1.CommitRetained
2.create trigger...


 
Max Zyuzin ©   (2003-01-09 09:26) [2]

Довольно часто проскакивал такой вопрос... в подобных случаях правильнее будет сначала получать значение генератора, и им пользоваться для вставки и в главную и в дочернюю таблицу... от триггеров на вставку отказаться...



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
14-87091
dkDimon
2002-12-28 01:04
2003.01.27
WinSock


4-87208
XHunter
2002-12-12 21:03
2003.01.27
Приложение ассоциированное с данным типом файла...


3-86632
Andrushk
2002-12-23 17:05
2003.01.27
Как из Oracl-овой процедуры вернуть в Delphi набор данных?


4-87219
olden
2002-12-12 13:00
2003.01.27
как запретить комбобоксу реагировать на колесо мыши


1-86742
Думкин
2003-01-17 09:05
2003.01.27
Прорисовка