I am ceating a database application with two different types of users, clients and technicians. Both types of users have to create and account in which they become "users". From there they can become clients or technicians or perhaps even both. Since each type describe different attributes -- user describes users basic information and login credentials, client describes client information such as billing info and payment method and technician describes technican information such as areas of expertese, experience and qualifications -- would it be best to create three tables and use user ID as the primary key for all?
For example: TABLE: user | ID | first_name| last_name| email |phone| password | TABLE client |ID | billing_add | b_city | b_st | b_zip | pmnt_mthd | cc_no| TABLE Techician |ID | type | years_of_exp | current | zone | Would this be the best way to design the schema and would it be best to make the client ID and technician ID the same as the user ID as they relate to the same person?