Главная страница
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.024 c
3-1177505762
SerMaxx
2007-04-25 16:56
2007.08.12
Вопрос по Update полей через TQuery


15-1184481774
Kolan
2007-07-15 10:42
2007.08.12
Какой таб открыть следующий или пред идущий? Вопрос по UseAbility


11-1166446345
AndreyRus
2006-12-18 15:52
2007.08.12
Ошибка обработчика события OnDestroy


15-1184583715
StriderMan
2007-07-16 15:01
2007.08.12
Commit


15-1184522210
Yanis
2007-07-15 21:56
2007.08.12
Новое веяние спама: pdf файлы. Обнаружил в почте.