Buenas, estoy haciendo una base de datos para una aplicación, pero tengo una duda que no se resolver. En mi base de datos, a parte de otras tablas, tengo estas 3:
Usuario, con campos como id, user, password
Rol, con id, nombre
Departamento, con id, nombre, email
Pues bien, tengo relaciones muchos a muchos entre Usuario y Rol, es decir, un Usuario puede tener varios roles, y un Rol lo puede tener varios usuarios.
También tengo la misma relación entre Usuario y Departamento. La teoría dice que debería crear 2 tablas intermedias, Usuario-Rol y Usuario-Departamento, pero con esta estructura solamente, soy incapaz de impedir que un usuario tenga 2 roles distintos en el mismo departamento.
Había pensado una tabla, con 3 campos, uno por id de las tablas, pero soy incapaz de poner las claves, ya sean UNIQUE, PRIMARY o INDEX, correctamente.
Saludos.