En una base de datos relacional, las relaciones permiten evitar datos redundantes. Por ejemplo, si está diseñando una base de datos que realiza un seguimiento de información sobre libros, podría tener una tabla denominada títulos que almacena información sobre cada libro, como el libro? título, la fecha de publicación y Publisher. También hay información que desea almacenar sobre el Editor, como el número de teléfono, dirección y código postal. Si tuviera que almacenar toda esta información en los títulos de tabla, el publicador? s número de teléfono se duplicaría por cada título de la editorial.
Una solución mejor es almacenar la información del editor una sola vez en una tabla independiente, Publisher. A continuación, podría colocar un puntero de la tabla titles que haga referencia a una entrada en la tabla Publisher.
Para asegurarse de que los datos no están sincronizados, puede exigir integridad referencial entre las tablas títulos y editores. Relaciones de integridad referencial ayudan a garantizar que la información en una tabla coincide con la información en otro. Por ejemplo, cada título de la tabla títulos debe estar asociado con un editor específico de la tabla Publisher. No se puede agregar un título a la base de datos de un editor que no existe en la base de datos.
Una solución mejor es almacenar la información del editor una sola vez en una tabla independiente, Publisher. A continuación, podría colocar un puntero de la tabla titles que haga referencia a una entrada en la tabla Publisher.
Para asegurarse de que los datos no están sincronizados, puede exigir integridad referencial entre las tablas títulos y editores. Relaciones de integridad referencial ayudan a garantizar que la información en una tabla coincide con la información en otro. Por ejemplo, cada título de la tabla títulos debe estar asociado con un editor específico de la tabla Publisher. No se puede agregar un título a la base de datos de un editor que no existe en la base de datos.
Tipos de relaciones de tablas
Una relación hace coincidir los datos de columnas de claves, normalmente columnas con el mismo nombre en ambas tablas. En la mayoría de los casos, la relación hace coincidir la clave principal de una tabla, que proporciona un identificador único para cada fila, con una entrada de la clave externa de la otra tabla. Por ejemplo, se pueden asociadas las ventas a los títulos específicos vendidos mediante la creación de una relación entre la columna title_id de la tabla titles (la clave principal) y la columna title_id de la tabla de ventas (clave externa).
Hay tres tipos de relaciones entre tablas. El tipo de relación que se crea depende de cómo se definen las columnas relacionadas.
Hay tres tipos de relaciones entre tablas. El tipo de relación que se crea depende de cómo se definen las columnas relacionadas.
Relaciones uno a varios
Una relación uno a varios es el tipo más común de relación. En este tipo de relación, una fila de tabla A puede tener muchas filas coincidentes en la tabla B, pero una fila en la tabla B puede tener sólo una fila coincidente en la tabla a. Por ejemplo, las tablas Publisher y titles tienen una relación de uno a varios: cada editorial genera muchos títulos, pero cada título procede sólo una editorial.
Se crea una relación uno a varios si sólo uno de las columnas relacionadas es una clave principal o tiene una restricción unique.
En Access, el lado de la clave principal de una relación uno a varios se denota mediante un símbolo de clave. El lado de clave externa de una relación se indica mediante un símbolo de infinito.
Se crea una relación uno a varios si sólo uno de las columnas relacionadas es una clave principal o tiene una restricción unique.
En Access, el lado de la clave principal de una relación uno a varios se denota mediante un símbolo de clave. El lado de clave externa de una relación se indica mediante un símbolo de infinito.
Relaciones varios a varios
En una relación varios a varios, una fila de la tabla puede tener muchas filas coincidentes en la tabla B y viceversa. Se crea una relación de tal definiendo una tercera tabla, denominada tabla de unión, cuya clave principal consta de las claves externas de las tablas A y B. Por ejemplo, la tabla authors y la tabla titles tienen una relación de varios a varios definida por una relación de uno a varios desde cada una de estas tablas a la tabla Título Autores. La clave principal de la tabla Título Autores es la combinación de la columna au_id (la tabla authors? s clave principal) y la columna title_id (la tabla titles clave principal).
Relaciones uno a uno
En una relación uno a uno, una fila de la tabla puede tener no más de una fila coincidente en la tabla B y viceversa. Se crea una relación uno a uno si ambos de las columnas relacionadas son claves principales o tienen restricciones únicas.
Este tipo de relación no es común porque la mayoría información relacionada de esta manera estaría todo en una tabla. Puede utilizar una relación uno a uno para:
Este tipo de relación no es común porque la mayoría información relacionada de esta manera estaría todo en una tabla. Puede utilizar una relación uno a uno para:
- Dividir una tabla con muchas columnas.
- Aislar parte de una tabla por razones de seguridad.
- Almacenar datos que se corta duración y se puede eliminar fácilmente eliminando simplemente la tabla.
- Almacenar información que se aplica sólo a un subconjunto de la tabla principal.
En Access, el lado de la clave principal de una relación uno a uno se denota mediante un símbolo de clave. El lado de clave externa también se indica mediante un símbolo de clave.
Cómo definir relaciones entre tablas
Cuando se crea una relación entre tablas, no es necesario tener los mismos nombres de los campos relacionados. Sin embargo, los campos relacionados deben tener el mismo tipo a menos que el campo de clave principal sea un campo Auto numérico de datos. Puede hacer coincidir un campo Auto numérico con un campo numérico sólo si la propiedad Tamaño Del Campo de ambos campos coincidentes es el mismo. Por ejemplo, puede hacer coincidir un campo Auto numérico y un campo numérico si la propiedad Tamaño Del Campo de ambos campos es entero largo. Incluso cuando ambos campos coincidentes son campos numéricos, deben tener el mismo valor de la propiedad Tamaño Del Campo.

No hay comentarios:
Publicar un comentario