Hi Kevin,
>I need to store addesses for different entities. I will create an address table. Anything wrong with creaing a 'ParentID' column and then populating it with the PK of the entity the address belongs to? I know some would say that you shoulds create a CustomerAddresses table and an EmployeeAddresses table, and so on. What do you think?
I have used for several applications a Contact table that is not a customer or an employee or a ??. If I have a customer table, I also still have a contact table. A customer may be a company with several different contacts. So If I have a contact table, then I have a PostalAddress table, an ElectronicAddress table and a PhoneNumber table. All contain the ContactID from the Contact table.
I can't count the number of times I have encountered a Customer/ Client table that has limitations on the number of people associated with it or the number of address, phone numbers or electronic addresses. It does take a bit of work to deal with all the links, but once you do it the first time and make this a re-usable plan it isn't so bad. I plug my Contact and related tables into any number of different applications and just link up customers or employees, or whatever as needed.
Just my .02 cents.
Tim
Timothy Bryan