We have a problem with our database design. We've had to break our customer contact information schema into separate tables :
Phone table,Email table, Fax table
etc and we then have a many-to-many
relationship between the main customer
table and the different contact tables.
For example customers can have many phone numbers if the customer works in different locations and shares different bits of contact information with other customers.
I am trying to decide between creating a generic table to hold all form of contacts data in and have lookup table for contacts_types
field with tag values like personal, email,work email,home phone ,cell phone, work phone , home fax ,work fax,work website etc
.
Which design would you advise?