Структура базы данных SQL Server/Asp.net MVC

Мне нужно разработать приложение, которое регистрирует детей и связывает этого ребенка с родителем. Когда родитель входит в систему, они должны быть перенаправлены только для информации своего ребенка.

Я создал таблицу пользователей и функций. Для входа Пользователь должен иметь соответствующую функцию. Я также создал таблицу под названием «Отец», где родители были пользователем и связаны с ребенком.

Мой вопрос в том, стоит ли хранить таблицу Parent .... или «представлять» родителей как пользователей. Если вы родитель... у вас есть связанный ребенок, но если вы обычный пользователь или администратор, с ним может не быть никого связанного.

Какая форма наиболее правильная для базы данных?

Структура базы данных SQL Server/Asp.net MVC

Обновление базы данных Упдб

Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
0
0
127
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий

Привет. Обычно в таких проектах я использую 3 таблицы.

  • Пользователь
  • Роль
  • UserToRole

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

Ученик Родитель Администратор Учитель и т.д

3-я роль пользователя будет сопоставлять пользователей с ролями

как userId - RoleId

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

Пользовательская таблица

  • Идентификатор
    • Имя пользователя
    • Другие поля

Таблица ролей

  • Идентификатор
    • Роль
    • Описание

Таблица UserToRoles

  • Идентификатор
    • Идентификатор пользователя
    • идентификатор роли

Звучит здорово для меня, но как соединиться между таблицами?

user_Word 20.02.2019 17:33

Ну, таблица usertorole свяжет их

RAHUL S R 20.02.2019 17:34

Таблица UserToRole будет иметь идентификатор пользователя и идентификатор роли, назначенные этому пользователю.

RAHUL S R 20.02.2019 17:34

Я подключаю таблицу User To Role к таблице Role и к таблице User, верно?

user_Word 20.02.2019 17:36

Да .. это то, что я говорю

RAHUL S R 20.02.2019 17:37

Я весь в замешательстве. Можете ли вы сказать мне, какие идентификаторы я должен иметь на каждом столе?

user_Word 20.02.2019 17:42

Нужно ли будет помещать IDUserToRole в таблицу User?

user_Word 20.02.2019 18:33

Нет, зачем тебе это

RAHUL S R 20.02.2019 18:36

В вопросе я представил образ новой базы данных. Это правильно, верно?

user_Word 20.02.2019 18:49

Вам не нужно создавать ParentTable отдельно, вы можете добавить еще один столбец в пользовательскую таблицу как «IsParent», который будет определять, является ли пользователь родителем или обычным пользователем.

Другие вопросы по теме