Nauman
Nauman

Reputation: 13

multiple users Database design

I'm creating a db schema that involves users that can have multiple users.

I want to register different companies to use the web services.

For example:

If user A or B create different accounts, how would I know this particular user is belong to User A or B company ? I think user table have many to many relationship with itself (like basic friendship design).

Please suggest the best design .

Ex.

User 3,4 belongs to User A

User 5,6 belongs to User B

Upvotes: 0

Views: 2569

Answers (1)

Michael
Michael

Reputation: 445

In general, I would recommend starting by identifying all the entities you are trying to persist. It sounds like you have two distinct entities in your question. One being "user," which represents a single person. Your second entity is "company." A "user" can belong to a company.

An example of a database design would be one table for users, and one table for companies. In the "users" table, you would want to have a foreign key column that references the primary key (unique id) of the company the user belongs to. If each user can only belong to one company, this becomes a simple one to many relationship.

In short, I would highly recommend treating company accounts separately from user accounts, since they are fundamentally different entities.

Upvotes: 3

Related Questions