
14/05/2011, 07:06
|
 | Moderador criollo | | Fecha de Ingreso: noviembre-2007 Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 2 meses Puntos: 2658 | |
Respuesta: Update a 2 tablas diferentes El asunto es que en la tabla "calificación" es completamente innecesario que existan los campos "dni" y "nombre" porque:
1) Son atributos propios del Alumno, y no de su calificación.
2) Ya existe una relación entre la calificación y el alumno a que pertenece, dada por la FK.
3) Ya existen esos mismos datos en la tabla a la que corresponden: ALumnos.
Justamente la existencia de esa relación dada por la FK tiene por objetivo no sólo mantener la integridad referencia, sino precisamente evitar redundancia de información, como la que has generado, y que requiere procesos extra para mantener consistente.
En otras palabras: Elimina esos campos de la tabla calificación. Son completamente innecesarios, y sus valores pueden ser obtenidos en la consulta por medio de un simple INNER JOIN.
Tip: Técnicamente hablando, el campo "promedio" tampoco es necesario porque es un valor calculable, y los valores calculables no se almacenan, especialmente si pueden variar entre consultas.
__________________ ¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente... "El problema es la interfase silla-teclado." (Gillermo Luque) |