Я пытаюсь взвесить все «за» и «против» в дизайне базы данных и хотел бы получить некоторую обратную связь относительно лучшего подхода. Вот ситуация:
У меня есть пользователи моей системы, у которых есть только несколько обязательных элементов (имя пользователя, пароль). Затем они могут предоставить много дополнительной информации. Эта дополнительная информация продолжает расти по мере роста системы, поэтому я хочу сделать это таким образом, чтобы добавить новую дополнительную информацию было легко. В настоящее время у меня есть отдельная таблица для каждого элемента информации. Например, есть таблица с именем 'names', которая содержит 'user_id', 'first_name' и 'last_name'. Там есть «адрес», «род занятий» и т. Д. Вы получаете смещение.
В большинстве случаев, когда я общаюсь с моей базой данных, я ищу только пользователей с одним определителем (имя, адрес и т. Д.). Однако бывают случаи, когда я хочу посмотреть, какую информацию установил пользователь. Например, страница «Изменить учетную запись» должна выполнять запросы для каждой необходимой информации.
Это расточительно? Есть ли способ, которым я могу структурировать свои запросы или свою базу данных так, чтобы мне никогда не приходилось делать один запрос для каждой части информации, подобной этой, без огромных таблиц? Если я хочу добавить «семейное положение», как это будет сложно, если у меня не будет системы «одна таблица на атрибут»?
Заранее спасибо.