Back to questions
Junior — Middle
92
Каким образом в базе данных задаются несколько ролей для одного пользователя?
Answer from AI
sobes.tech AI
В базе данных для задания нескольких ролей одному пользователю обычно используется связь многие-ко-многим между таблицами пользователей и ролей.
Пример структуры:
- Таблица
users— хранит данные пользователей. - Таблица
roles— хранит возможные роли. - Таблица
user_roles— связывает пользователей и роли, содержит парыuser_idиrole_id.
Такой подход позволяет одному пользователю иметь несколько ролей, а одной роли — принадлежать нескольким пользователям.
Пример SQL для создания связующей таблицы:
CREATE TABLE user_roles (
user_id INT,
role_id INT,
PRIMARY KEY (user_id, role_id),
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (role_id) REFERENCES roles(id)
);