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

Связь в таблицах!   Найти похожие ветки 

 
Golik   (2006-03-23 19:10) [0]

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


 
Anatoly Podgoretsky ©   (2006-03-23 19:22) [1]

where число=15


 
Golik   (2006-03-23 19:23) [2]

а как зделать так чтоб по кнопке удаления текущей записи удалялись все данные из подчиненых таблиц тоже??


 
Anatoly Podgoretsky ©   (2006-03-23 19:31) [3]

DELETE


 
Golik   (2006-03-23 22:22) [4]

при удалении выдает ошибку мол что есть связи!!!!!! :-(


 
Anatoly Podgoretsky ©   (2006-03-23 22:29) [5]

Удвлять надо в подчиненой таблице.


 
Германн ©   (2006-03-24 02:34) [6]


> Golik   (23.03.06 19:10)  
>
> День добрый! такая проблема - как зделать так чтоб по кнопке
> удаления текущей записи удалялись все данные из подчиненых
> таблиц тоже!


А собс-но эти таблицы откуда взялись? Они были даны тебе свыше? Или ты их сам создал?
Если свыше, то приведи структуру сей базы. Тогда смогут помочь более конкретно. Если сам создал, тогда ...


 
pavel_guzhanov ©   (2006-03-24 09:04) [7]

а что за база?


 
pavel_guzhanov ©   (2006-03-24 09:08) [8]

Если MSSQL, то поставь в свойствах связи галочку "cascade delete related records"


 
vovnuke ©   (2006-03-24 09:31) [9]

рекурсивная процедура которая проверяет тип каждого поля:
 если он TDataSetField, то переходим к его подчиненному набору,
 если нет то удаляем запись.


 
Golik   (2006-03-24 21:50) [10]

Германн
База Access
1-я талица содержит ФИО.
2-я содержит адреса проживания.
а возможно ли отображать данные в одном DBGride из разных таблиц ?
если да то как это реализовать ???


 
VICTOR_   (2006-03-24 23:32) [11]


> а возможно ли отображать данные в одном DBGride из разных
> таблиц ?
> если да то как это реализовать ???
>

Можно, используй
TADOQuery


 
sniknik ©   (2006-03-25 00:02) [12]

> База Access
тоже можно, как и mssql, создать таблицу с внешним ключем с "ON DELETE CASCADE" и будет удалять все связанные подчиненные при удалении из главной.

см. справку аксесса раздел "Предложение CONSTRAINT" там и примеры есть.

> а возможно ли отображать данные в одном DBGride из разных таблиц ?
да. составь запрос с обьеденением... справка таже раздел "Операция INNER JOIN" (/LEFT, RIGHT). запрос выполняй в TADODataSet (приучайся к правильный компонентам)


 
Германн ©   (2006-03-25 02:38) [13]


> Golik   (24.03.06 21:50) [10]
>
> Германн
> База Access
> 1-я талица содержит ФИО.
> 2-я содержит адреса проживания.


Товарищ майор, я это не читал, не читаю и не буду читать! :-)


 
Anatoly Podgoretsky ©   (2006-03-25 09:38) [14]

Германн ©   (25.03.06 02:38) [13]
А что не нравится?


 
Golik   (2006-03-25 20:45) [15]

а как добавить ?
по кнопке добавить пишу datamodule2.FIOTable.Append;
datamodule2.ADRTable.Append;
DataModule2.FIOTable.FieldByName("fldФамилия").AsString :=edit1.Text ;
DataModule2.ADRTable.FieldByName("fldГород ").AsString :=edit2.Text ;
datamodule2.FIOTable.Post;
datamodule2.ADRTable.Post ;
datamodule2.ADRTable.Close;
datamodule2.FIOTable.Close;

но данные добавляются только в таблицу ФИО, а таблица Адрес остается пустая .
Что делать ? и почему так происходит ?


 
Германн ©   (2006-03-26 05:19) [16]


> Anatoly Podgoretsky ©   (25.03.06 09:38) [14]
>
> Германн ©   (25.03.06 02:38) [13]
> А что не нравится?


А что Вы имели в виду:
"А что НЕ НРАВИТСЯ?!!!"
или
что не навится?"

А вообще мне не нравятся базы с ФИО и адресами.



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

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



Память: 0.48 MB
Время: 0.027 c
15-1142724810
Германн
2006-03-19 02:33
2006.04.09
Верный (правильный) вопрос


3-1139908665
Val(from Donetsk)
2006-02-14 12:17
2006.04.09
драйвер MSSQL for BDE


10-1116407057
Uli
2005-05-18 13:04
2006.04.09
Удалить все закладки


2-1143135831
opoloxai
2006-03-23 20:43
2006.04.09
Как изменить дату создания файла?


2-1143534359
Barksy
2006-03-28 12:25
2006.04.09
Какую клиент-серверную базу выбрать?




   Наверх