lionelbrown
Programmer
Hello!
I'm designing a database that contains a Homesite table (stores info about a new home) which will have RealitorID, InspectorID, ServiceRepID, etc. as attributes.
These are all foreign keys to a contact person. I have a table (Contacts) which contains info about a contact (name, phone, etc) and a related table ContactRole table which stores 1 or more roles for the Contact Person (Salesperson, Customer Service, etc).
My question is this:
Should I lump all the contacts into one table and have the Homesite table relate to the Contacts table multiple times (for example: RealitorID, InspectorID, ServiceRepID would all be foreign keys to the Contact table (which has ContactID as the primary key)? Or should I split the Realitors, Inspectors, etc. into their own tables?
I realize I would have to join the Contacts table multiple times in queries to pull all the info for the Homesites table ... would this cause major issues??
If anyone can give me suggestions on the best approach (those listed above, or a better way) I would GREATLY appreciate it!
Thanks in advance!
I'm designing a database that contains a Homesite table (stores info about a new home) which will have RealitorID, InspectorID, ServiceRepID, etc. as attributes.
These are all foreign keys to a contact person. I have a table (Contacts) which contains info about a contact (name, phone, etc) and a related table ContactRole table which stores 1 or more roles for the Contact Person (Salesperson, Customer Service, etc).
My question is this:
Should I lump all the contacts into one table and have the Homesite table relate to the Contacts table multiple times (for example: RealitorID, InspectorID, ServiceRepID would all be foreign keys to the Contact table (which has ContactID as the primary key)? Or should I split the Realitors, Inspectors, etc. into their own tables?
I realize I would have to join the Contacts table multiple times in queries to pull all the info for the Homesites table ... would this cause major issues??
If anyone can give me suggestions on the best approach (those listed above, or a better way) I would GREATLY appreciate it!
Thanks in advance!