views:

16

answers:

1

How to model something if the desired information is the same as an already existing record e.g. Address (Street, Country, Province, Zip)

We need to capture an User who has a permanent address and an address for correspondence (i.e. 2 rows per user). There is a provision to say that the "address for correspondence" is the same as the "permanent address". I don't want to replicate this data since a change has to be made in both the records. How do you model this in schema?

+3  A: 

One table contains users, one table contains addresses, and another table represents the many-to-many relationship between users and addresses, with a column indicating the relationship type. The user will have two rows in the m-to-m table, one for each type of address, both pointing to the same identifier of the address in the addresses table.

Dan Grossman