I’m developing a system to manage internships at a university and I’m planning how to model user information, which can be both students and companies. I’m unsure whether I should create a single users table or if I should create separate tables for students and companies, extending a common users table.
My concern is to ensure database normalization and data integrity while also facilitating queries and operations related to the different types of users.
What would be the best practice in this scenario? Should I opt for a single table approach for all user types or split into separate tables for students and companies? What are the advantages and disadvantages of each approach?
Thank you in advance for your help.