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

Вниз

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

 
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 вся ветка

Форум: "Начинающим";
Текущий архив: 2006.04.09;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.47 MB
Время: 0.011 c
2-1143476056
Genry
2006-03-27 20:14
2006.04.09
Функции арифметического округления


2-1143100617
Darkwing
2006-03-23 10:56
2006.04.09
Динамический массив в Record е


15-1142950445
Сатир
2006-03-21 17:14
2006.04.09
MS SQL Server


2-1143209891
Толян
2006-03-24 17:18
2006.04.09
определение каталога в Паскале


3-1139906364
barakuda
2006-02-14 11:39
2006.04.09
dbGRID через строчку





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