@Sugarray

Как правильно спроектировать базу; консистентность данных?

Вопрос мучает меня целый день) Есть около 20 типов пользователей ( классические имя фамилия и т.д.) и для каждого из них есть уникальные поля. Как в таких случаях проектировать базу? Неужели для каждого свою таблицу?
  • Вопрос задан
  • 586 просмотров
Пригласить эксперта
Ответы на вопрос 2
Fesor
@Fesor
Full-stack developer (Symfony, Angular)
в идеале да. есть еще наследование таблиц, есть еще EAV но думаю вам первый вариант больше подходит.
Ответ написан
Комментировать
> и для каждого из них есть уникальные поля
А как этими полями будут пользоваться? Группировки/фильтры/агрегация по ним будут?
Если будут, то тогда действительно 20 таблиц (и это нормально, т.к. тогда и кода для каждого типа пользователя у вас будет достаточно). И паттерны наследования - concrete table, single table, class table.
Если не будут (т.е. эти поля будут читаться/писаться целиком) - может в JSON поле их?
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы