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

Вниз

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

 
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;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.043 c
2-1184568047
Girol
2007-07-16 10:40
2007.08.12
удалить запись(и) из БД Access


2-1184346134
WFS
2007-07-13 21:02
2007.08.12
Как поменять название поля в базе данных (программным образом)?


15-1184306583
Nic
2007-07-13 10:03
2007.08.12
Стали жужжать вентиляторы в системнике


4-1172228437
jTommy
2007-02-23 14:00
2007.08.12
Различный цвет фона контрола и его владельца


15-1184100665
Nic
2007-07-11 00:51
2007.08.12
Командирские часы





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