2016-08-28 4 views
0

Я создаю схему db, которая включает пользователей, которые могут иметь несколько пользователей.несколько пользователей Дизайн базы данных

Я хочу зарегистрировать разные компании для использования веб-сервисов.

Например:

  • пользователя A или B (и т.д.) могут подписаться и создать корпоративный аккаунт
  • пользователь А может создать несколько учетных записей других пользователей с их типами, аналогично пользователем B

Если пользователь A или B создает разные учетные записи, как бы я узнал, что данный конкретный пользователь принадлежит компании User A или B? Я думаю, что таблица пользователей имеет много разных отношений с самим собой (например, базовый дизайн дружбы).

Пожалуйста, предложите лучший дизайн.

Ex.

User 3,4 belongs to User A

User 5,6 belongs to User B

+1

Да, вы правы, что вы управляете многими и многими отношениями с самим собой. –

ответ

0

В общем, я бы рекомендовал начать с определения всех объектов, которые вы пытаетесь сохраняться. Похоже, в вашем вопросе у вас есть две разные сущности. Один из них - «пользователь», который представляет собой одного человека. Ваша вторая организация - «компания». «Пользователь» может принадлежать компании.

Примером проектирования базы данных будет одна таблица для пользователей и одна таблица для компаний. В таблице «users» вы хотели бы иметь столбец внешнего ключа, который ссылается на первичный ключ (уникальный идентификатор) компании, к которой принадлежит пользователь. Если каждый пользователь может принадлежать только одной компании, это становится простым для многих отношений.

Короче говоря, я бы рекомендовал рассматривать учетные записи компаний отдельно от учетных записей пользователей, поскольку они являются принципиально разными субъектами.