Junior — Middle
Como são atribuídos vários papéis a um único utilizador na base de dados?
sobes.tech IA
Resposta da IA
Na base de dados, para atribuir múltiplos papéis a um único utilizador, geralmente é utilizada uma relação muitos-para-muitos entre as tabelas de utilizadores e papéis.
Exemplo de estrutura:
- Tabela
users— armazena os dados dos utilizadores. - Tabela
roles— armazena os papéis possíveis. - Tabela
user_roles— liga utilizadores e papéis, contendo paresuser_iderole_id.
Esta abordagem permite que um utilizador tenha vários papéis, e que um papel pertença a vários utilizadores.
Exemplo de SQL para criar a tabela de ligação:
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)
);