I was in a meeting with my boss and technical support leader and they asked me for a database model to a very simple application. That application requires: employees information, some location data, and etc, etc, etc.
One of their database table was:
id name lastname username password
That table suppose to save all employers' info but since I was available to make any changes as I wanted I did as follow:
Person id lastname ocupation// saved as int. Ex: 1 =employee, 2 =contacts, 3 = bank name, etc, etc User id person_id username password
My approach was very simple and extensible since now my table person was able to handle all person information despite whether if it is employee or a dentist or what ever. But my boss and a work-mate said that my approach was a bad idea and not correct and too complicated it(which is not), but what if sometimes later the costumer wants to add a contact-list? Now i have to create another table to store contacts info and repeat the columns name, lastname, etc, etc.
I had implemented this before and it worked perfectly.
The question is: Is my approach so bad? Is there any way to make it better?