Link to home
Start Free TrialLog in
Avatar of kiwibigdave
kiwibigdave

asked on

structuring tables that might link to each other?

I have a database that includes two tables called, say, A and B.  Each record in table A can have multiple records in table B, but some of these sets of multiple records in table B can apply to more than one record in table A.  i.e. table A has 5 records, numbered A1 to A5.  Table B has 12 records numbered B1 to B12.  B1, B2 and B3, are all linked to A1; B4, B5 and B6 are linked to A2; and B7, B8 and B9 are linked to A3.  But B10, B11 and B12 apply equally to both A4 and A5.  There is no limit to the number of times a set of table B records can link to a single table A record.

In practical terms a user is required to select a table A record [in a form] and then add any number of table B records to it [in a sub-form].  But sometimes they don't want to enter multiple records twice, they just want to select a table A record, say A5, and rather than enter B13, B14 and B15 which are exactly the same as B10, B11 and B12 they just want to say "OK, I've selected A5, now I just want to tell the system that it should use the same table B records as A4".

What is the best way to structure / manage this in MS Access?
ASKER CERTIFIED SOLUTION
Avatar of Rey Obrero (Capricorn1)
Rey Obrero (Capricorn1)
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
For this you need a so-called "relation table" having the key of tableA and tableB.
The "set copy" can be performed by an INSERT query selecting the rows from say A5 and INSERT then with the key A4.

This will have to be triggered from the form and you need to decide what to do when A4 already has one or morerelation rows.....

Need more info ?

Nic;o)
Avatar of kiwibigdave
kiwibigdave

ASKER

Thanks for that capricorn, sometimes just asking the question and being pointed back at the basics makes you realise what you've done wrong.

But to update the topic for the future, immediately I saw the many-to-many topic at "Defining Relationships Between Tables in a Microsoft Access Database
http://support.microsoft.com/?kbid=304467 " I realised I don't have a many-to-many relationship at all, and that I'm actually one table short.

My table B needs to be split into B and C, with a one-to-many relationship from B to C.  Then B and A also need a one-to-many.

Thanks also Nico, if I had asked the right question I could have saved you some time.

Then again, if I'd known the right question I could have saved myself 250 points ;-)

Looks to me you realized you needed to created the relation table I proposed :-)

Nic;o)