I will go with option 1.
Think that there are user lakhs. Thus, in order to get user data, you have to deal with n tables instead of 1 table, which obviously add LOAD to the server, and finally you will have BAD PERFORMANCE.
So, I would go with option 1.
For tel. number, add a field like landline_number, mobile_number, alternate_number, as adding a field to a table will not make that much difference, and then add a table for the field.
And yes, according to Steve's comments, save the password using a secure hash mechanism.
So which option are you going to choose?
Fahim parkar
source share