UC3M

Grado en Ing. Telemática/Sist. Audiovisuales/Sist. de Comunicaciones

Arquitectura de Sistemas

Septiembre 2017 - Enero 2018

10.4. Establecimiento de relaciones entre diferentes tablas de la aplicación

En multitud de aplicaciones, existen relaciones entre diferentes tablas presentes en la aplicación y eso se debe reflejar en el modelo de datos. Por ejemplo, en la aplicación de referencia, existe una relación entre las tablas de fotos y autores, dado que cada foto tiene un autor. Una posible solución, diferente a la propuesta, habría sido tener una única tabla de FOTOS donde se incluyeran todos y cada uno de los campos de la tabla de autores, además de los propios de la tabla de fotos. Pero dicha solución sería muy ineficiente, dado que existen fotos que comparten el mismo autor, por lo que replicar la información de un mismo autor varias veces no es una buena idea. Al separar por otro lado la tabla de AUTORES, estamos utilizando sólo una instancia de autor para todas las fotos que comparten dicho autor. Para establecer esta relación entre tablas, establecemos una relación entre los campos de AUTOR_ID de ambas tablas, de tal manera que relacionamos ambos campos de las tablas, de forma que la información del autor de una foto vamos a buscarla a la tabla de autores que tenga el mismo identificador en dicho campo. Este es el motivo de que se haya añadido el campo AUTOR_ID en la tabla de autores. Gráficamente, esa relación hay que expresarla en el modelo de datos, mediante una flecha por ejemplo. A tal relación se la denomina una FOREIGN KEY (FK).

Aunque no las veremos en este material, se pueden establecer otros tipos de relaciones entre las tablas de una aplicación.