Моделирование базы данных

0

Мой вопрос о моделировании конкретной ситуации: В моей модели у меня есть таблицы: Пользователь, Офисы и Партнеры. Система имеет разные профили пользователей: пользователи Office (консультанты, директора, помощники), пользователи для партнеров (Учреждения,..), пользователи admin. Каков наилучший способ моделирования взаимоотношений между пользователями офиса и партнерами, если: - Пользователи уникальны (два пользователя должны иметь один и тот же логин - должны быть только в 1 таблице) - Пользователь офиса связан только с одним офисом - Пользователь-партнер связан только с партнером.

Это должна быть таблица для пользователей офиса и одна для пользователей партнеров? От многих до многих отношений в этом случае не получится, не так ли? Благодарим за помощь.

  • 0
    Здесь приведено несколько примеров моделей . Чтение некоторых из них может дать некоторое вдохновение.
  • 1
    @Seth. Это не "модели", они не имеют ничего общего с базами данных, это ведра рыбы. Хуан задал прямой технический вопрос, и SO дает технические ответы (по крайней мере, некоторые из нас делают) ... не вдохновение.
Показать ещё 2 комментария
Теги:
database
modeling

3 ответа

1

Вы не предоставили достаточного определения re Partners and Offices, поэтому те части модели еще не завершены, но я думаю, что основной вопрос, на который вы задаете, отвечает в этом Модель данных . Насколько я понимаю:

  • Пользователь (имя пользователя, имя пользователя уникально, и вы не хотите, чтобы это было неясно).
  • Пользователи исключительно (то есть X в полукруге) Office/Partner/Administrator
    • для которого требуется структура супертипа-подтипа. Мощность 1: 0-1
  • Пользователи принадлежат (?) Office или Партнеру исключительно.
    • Это может быть OfficeType или OfficeTitle.

Если вы определите этот последний элемент немного больше, я смогу закончить модель.

Читатели, которые не знакомы со стандартом для моделирования реляционных баз данных, могут найти IDEF1X Notation .

  • 0
    могу ли я спросить у вас название программного обеспечения, которое вы используете для построения моделей данных? Спасибо
0

Я думаю, что лучший маршрут - это перейти к структуре группы учетных записей, где вы используете таблицу ассоциаций, чтобы определить, кто в какой группе...

группа

id | имя

group_assoc

group_id | account_id

0

Предполагая, что эта модель никогда не изменится, я бы добавил поля пользователям, чтобы определить, где они принадлежат. Вы можете поместить перечисление с именем user_type с возможными значениями "office", "partner" или "admin". И тогда вы можете поместить столбцы office_id и partner_id, чтобы при необходимости могли присоединиться к таблицам.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню