Database Administrators Stack Exchange is a question and answer site for database professionals who wish to improve their database skills and learn from others in the community. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I have a database having Millions of records in three tables. Now i want to split these three tables in multiple tables to reduce redundancy and data duplication.

A lot of records(Persons) have multiple city, address , telephone, fax.

So New tables will be Address, ,City ,Postcode ,State ,Country ,Telephone ,Fax

My question is , Is it fine to have City, Postcode, State, Country, Telephone tables separately or Just merge these tables in address table?

share|improve this question

An address is a inseparable entity consisting of Street, City, State, Zip and Country. Those should all go into one table. There might be a reason to have an additional e.g. country table to store countries the person visited, but the address table should always contain at least the above five fields as a street without the rest is meaningless.

For phone numbers it makes sense to have a separate table. The fax numbers are usually stored in the same table differentiated by a type. That makes future extensions a lot simpler, but you could got with separate a fax table too. That would allow you to store additional information like e.g. if that fax number can receive color facsimiles.

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.