Cita: pero segun mi asesor "analizando la tabla y apegandome a un sistema de base de datos relacional, no permite tener claves como sacadas de la manga"
Pues tu asesor te debe decir que la estructura que me muestras no es la mas normalizada..
Por ejemplo.. para empezar... un profesor puede tener una o mas materias, que pueden ser impartidas en uno o mas grupos.. y sin embargo todo lo tienes en una sola tabla... y tus campos llaves los tienes como char..por lo regular se usan campos llaves como tipo enteros para que los índices sean más rápidos..
Creo que se puede hacer un reacomode de las tablas.. donde tengas por ejemplo tus materias, tus profesores y los grupos... ya que si el día de mañana necesitan informacion por ejemplo el apellido del profesor o su telefono.. o algo por el estilo tu tabla no cumplirá con el requisito..
Y te recomiendo usar campos de tipo char cuando sabes la longitud exacta de tu campo... porque de lo contrario siempre estaría ocupando todo el espacio aún cuando tu texto solo neceiste uno...
Esos son mis comentarios de manera general... creo que habría que hacer una mejor definición a tu BD..
Pero cualquier cosa por aqui andamos..