saludos amigo.
Me toco crear un sistema donde tenia 3 tablas: Paciente, enfermedad y detalleenfermedad.
Paciente: IDpaciente como PK
Enfermedad: IDEnfermedad como PK
Detalleenfermedad: IDPaciente e IDEnfermedad como PK (PK Compuesta).
Codigo SQL:
Con esto validaba que el mismo paciente no tuviera la misma enfermedad dos veces.
El ejemplo es parecido a lo que andas buscando (creo).
Espero te sirva.