Agregue un campo de ID a sus Job Titles
tabla - llamémoslo JobTitleID
Ahora tus Assignments
la tabla tiene Employee ID
y JobTitleID
.
Esto, por supuesto, significa que para encontrar los Proyectos de un empleado, debe unirse a través de Assignments
mesa y los Job Titles
mesa
EDITAR
Después de la discusión en los comentarios, ignore lo anterior, lo dejé solo como historial.
Ahora aquí está la nueva versión:Tus Assignments
necesidades de la mesa (como ya consideró)
- ID de empleado
- ID del proyecto
- Identificación del título
- Id. de tarea
Pero también necesita un UNIQUE INDEX(EmployeeID, ProjectID)
- esto hará que sea imposible que un empleado esté en el mismo proyecto bajo diferentes títulos.
Todavía se permitirán varios empleados con el mismo cargo, así como varios cargos en diferentes proyectos para un empleado.