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

Вниз

связка двух таблиц ...   Найти похожие ветки 

 
zsergey   (2007-07-19 07:35) [0]

Всем привет! Есть две таблицы. Одна главная: TOTALS(name,adres,tel) и подчиненная ADR(adres). Надо связать их по полю adres таким образом, чтобы когда данные заносятся в главную таблицу, адреса в подчиненной добавлялись автоматически, т.е. адреса должны дублироваться.
Я сделал так: в DataSourse таблицы ADR в свойстве MasterSourse указал DataSourse гл. таблицы, сделал индекс по единственному полю в т.ADR и в MasterFields связал поля adres. Все. Но этого мало, записи в подч. таблицу не добавляются. Подскажите, как нужно делать...


 
ЮЮ ©   (2007-07-19 07:49) [1]

Если влои что-нибудь почитать о реляционных базах данных, отказаться от ADR(adres) вообще. На кой она нужна, если  в TOTALS.adres будет то же самое. Информация в БД не должна дублироваться.

З.Ы. а где TEL(tel) - телефонов тоже может быть несколько :)


 
ЮЮ ©   (2007-07-19 07:54) [2]

> главная и подчиненная

несколько TOTALS млгут жить по одному ADR или один TOTAL иожет жить по нескольким ADR?


 
zsergey   (2007-07-19 09:28) [3]

все спасибо, разобрался...


 
ЮЮ ©   (2007-07-19 09:41) [4]

> все спасибо, разобрался...

Ну-ну. Успехов!


 
Юрий Зотов ©   (2007-07-19 11:02) [5]

> zsergey   (19.07.07 07:35)

Чтобы запись куда-то добавилась, ее ведь надо добавить, верно? Не может же это произойти само по себе.

"Автоматическое" добавление/изменение записи в подчиненной таблице можно реализовать либо на стороне сервера (в триггере OnInsert/OnUpdate главной таблицы), либо в коде клиента (в обработчиках событий датасета).

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

PS
А насчет дублирования данных все же подумайте - действительно ли в Вашей задаче оно необходимо? Если можно, то лучше, конечно, обойтись без него.


 
Юрий Зотов ©   (2007-07-19 11:05) [6]

> zsergey   (19.07.07 07:35)

Кстати - ведь и удаление записей, наверное, тоже должно быть совместным?



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
3-1177497099
snaks
2007-04-25 14:31
2007.08.12
Объединение ячеек в DBGrid


15-1184503367
Kerl
2007-07-15 16:42
2007.08.12
Книги D7


2-1184410046
ASSERT
2007-07-14 14:47
2007.08.12
ProcAddress


15-1184238783
Megabyte
2007-07-12 15:13
2007.08.12
Правила формирования xml-файлов


2-1184505453
Gringoire
2007-07-15 17:17
2007.08.12
Работа с сетью Internet