Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Связанные таблицы в Access [D6, dBase, FoxPro, Paradox, Access]


Yuri Btr ©   (2002-07-19 12:11:00) 

Ув. мастера, у меня есть две связанные таблицы в Access базе:
Допустим поля первой таблицы (Table1)-
(1)"Номер"
(2)"Название устройства"
а поля второй таблицы (Table2)-
(1)"Номер"
(2)"Дата использования"
Таблицы связаны по "Номеру" в соотношении один - ко многим, т.е. Одному устройству может соответствовать несколько дат использования. Как мне из Дельфи, после вставки записи:
Table1.InsertRecord([Номер,Название устройства])
Добавить во вторую таблицу даты именно для этого номера устройства? Если мне не известен Номер, потому как поле Номер - автоинкрементное.
Table2.InsertRecord([Номер,Дата использования])

Наверное надо для начала настроить MasterSource для Table2 и связать их по Номеру?
Заранее спасибо.


Yuri Btr   (2002-07-19 13:20:00) [1]

Спасибо.
Я сделал так
Table1.Insert([nil,"Сервер"])
затем, когда курсор установится на новую запись,
Table2.Insert([Table1.FieldbyName("Номер").asInteger,"19.07.2002"])

(во второй таблице Номер - не автоинкрементное поле)


MsGuns   (2002-07-19 12:59:00) [2]

>Lola
Не понял !
Есть 2 таблицы

Master:
-------------
MainKey MPole1 MPole2 ...
+

Detail:
-------------
MainKey Key1 Key2 .. DPole1, DPole2,...
+ любое любое

Связь по MainKey
Его "Номер" - это Key1. Оно может быть ЛЮБОГО типа !
А вот MainKey = MainKey(Master)


Lola   (2002-07-19 12:52:00) [3]

Во второй таблице поле Номер должно быть не автоинкрементным, а Integer (автоинкрементное - это само собой, если нужно). Вот ему и присваиваешь значение автоинкрементнного поля из первой таблицы.


MsGuns   (2002-07-19 12:19:00) [4]

При связи Master-Detail в гриде детальной таблице вообще не надо держать колонку с ключом - при добавлении туда новой записи это поле заполнится автоматически. Но добавлять в детал надо ручками (в смысле программно сделать Insert (Append)


Наверх

Титульная страница Поиск, карта сайта Написать письмо