Necesitas relacionar tablas y no entiendes cómo hacerlo?
Te presento lo que debes conocer acerca de los tipos de relaciones y cómo establecerlas en el entorno de desarrollo de Microsoft Access
1. RELACIONES ENTRE TABLAS
Laboratorio de Programación Digital
ATRIBUTO X1
ATRIBUTO X2
.
.
.
ATRIBUTO XN
TABLA X
ATRIBUTO Y1
ATRIBUTO Y2
.
.
.
ATRIBUTO YN
ATRIBUTO X1
TABLA Y
1
∞
2. Una relación es una asociación que se
establece entre campos comunes en dos tablas.
Las tablas se relacionan de dos
a dos, donde una de ellas será
la tabla principal (de la que
parte la relación) y la otra será
la tabla secundaria (destino de
la relación).
Para poder relacionar tablas
entre sí se deberá especificar un
campo en común que contenga
el mismo valor en las dos tablas
y dicho campo será clave
principal en una de ellas.
3. Una relación uno a uno, se da cuando un registro de una tabla sólo
puede estar relacionado con un único registro de la otra tabla y viceversa.
Se tienen dos tablas una con los datos de personales
de un Empleado y otra Ficha Laboral con los datos
laborales de dicho empleado, un empleado sólo puede
tener una Ficha laboral, y un Ficha laboral le pertenece
únicamente a un empleado.
Este tipo de relación no es habitual, debido a que la mayoría de la información
relacionada de esta forma estaría en una sola tabla. Puede utilizar la relación uno a uno
para dividir una tabla con muchos campos, para aislar parte de una tabla por razones
de seguridad o para almacenar información que sólo se aplica a un subconjunto de la
tabla principal.
Para relacionar dos tablas de Uno a Uno el campo común (llave foránea) será la Clave
Principal de la otra tabla con la cual se relaciona y estará ubicado en una de las dos
tablas. (es necesario ajustar en el campo llave foránea la Propiedad Indexado al valor
Indexado sin duplicado ).
4. tenemos dos tablas una con los datos de
diferentes clientes y otra con las facturas,
un cliente puede tener más de una
factura, pero una factura pertenece
únicamente a un cliente.
La relación Uno a Varios es el tipo de relación más común. En este
tipo de relación, un registro de la Tabla A (Tabla Principal) puede tener
muchos registros coincidentes en la Tabla B, pero un registro de la Tabla
B (Tabla Secundaria) sólo tiene un registro coincidente en la Tabla A.
Para relacionar dos tablas de Uno a Varios se debe crear en la tabla
donde la relación es a varios un campo común (llave foránea) este
campo común deber la Clave Principal de la otra tabla con la cual se
relaciona.
5. En una relación Varios a Varios, un registro de la Tabla A puede tener
muchos registros coincidentes en la Tabla B, y viceversa.
Este tipo de relación sólo es posible si se define una tercera tabla (denominada
tabla de unión) conformada por los campos claves de cada tabla que se desea
relacionar. La Clave principal de esta nueva tabla será la suma de los dos
campos clave
La tabla factura y la tabla productos tienen una relación de varios a varios que
se define mediante la creación de dos relaciones de uno a varios con la tabla
detalle_fact. Una factura puede incluir muchos productos, y cada producto
puede aparecer en muchas facturas.
Una relación de
varios a varios no
es sino dos
relaciones de uno
a varios con una
tercera tabla
6. 1. Determinar el tipo de relación que existe entre las tablas.
2. Crear el campo común o llave foránea en la tabla adecuada de acuerdo al
tipo de relación y, utilizando el asistente para búsqueda para buscar los
valores en la tabla con la cual se relaciona.
Campo
común o
Llave
Foránea
7. 3. Hacer clic en el botón Relaciones que se encuentra en la pestaña
Herramientas de base de datos.
4. Aparecerá el cuadro de diálogo Mostrar tabla de la
derecha esperando indicarle las tablas que formarán
parte de la relación a crear.
5. Seleccionar una de las tablas que pertenecen a la
relación haciendo clic sobre ella, aparecerá dicha tabla
remarcada.
6. Hacer clic sobre el botón Agregar.
7. Repetir los pasos 5 y 6 hasta añadir todas las tablas de
las relaciones a crear.
8. Hacer clic . sobre el botón Cerrar.
3
4
5
6
8
8. Para crear la relación:
1. Ir sobre el campo de relación de la tabla principal (en nuestro caso
codArea de la tabla Área).
2. Pulsar el botón izquierdo del ratón y manteniéndolo pulsado arrastrar
hasta el campo CodigoArea de la tabla secundaria (Curso).
3. Soltar el botón del ratón.
4. Si la relación está creada, se debe seleccionar la relación pulsando el
botón derecho y seleccionar la opción modificar relación.
2
1
4
9. Aparecerá el siguiente cuadro:
Se debe activar el recuadro
Exigir integridad referencial
haciendo clic sobre éste.
La integridad referencial es un sistema de reglas que utiliza Access 2007
para asegurarse que las relaciones entre registros de tablas relacionadas
son válidas y que no se borren o cambien datos relacionados de forma
accidental.
Al exigir integridad referencial en una relación le estamos diciendo a Access
2007 que impida introducir datos en la tabla secundaria si previamente no
se ha introducido el registro relacionado en la tabla principal.
10. La integridad referencial dispone de dos acciones asociadas:
Actualizar en cascada los campos relacionados: Hace que cuando se cambie el
valor del campo de la tabla principal, automáticamente cambiarán los valores
de sus registros relacionados en la tabla secundaria.
Por ejemplo: si se cambia el Código de Área (CodArea) en la tabla Área
debe cambiar en la tabla Curso
Eliminar en cascada los registros relacionados: Cuando se elimina un
registro de la tabla principal se borrarán también los registros relacionados
en la tabla secundaria.
Por ejemplo: si se borra el Código de Área (codArea) de un Área debe
eliminarse todos los Cursos que tenía asociados.