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

Вниз

Связывание таблиц в 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.01 c
6-86990
kalishenko stas
2002-11-28 14:19
2003.01.27
Sockets и Internet


6-86994
Vlad-Sh
2002-11-29 06:33
2003.01.27
Не могу задать порт источника в TIdUDPClient (Delphi 6)


3-86637
TTCustomDelphiMaster
2003-01-07 15:45
2003.01.27
Вы мне скажите честно


3-86716
visnuk
2003-01-09 10:33
2003.01.27
Помогите с TDBGrid


3-86655
Nil
2003-01-05 04:34
2003.01.27
Перенос данных таблицы в Excel





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