Normalmente cuando tenemos una base de datos con varias tablas es necesario relacionar entre sí algunas de ellas.
Iremos al menú Herramientas, Relaciones o pincharemos en el icono de la barra de herramientas. Veremos una ventana en la que veremos las tablas que tenemos en la base de datos.
Seleccionaremos las tablas que queremos relacionar y pinchamos en Agregar.
Veremos los campos contenidos en cada una de las tablas.
Para relacionar las dos tablas, pincharemos sobre el campo sobre el que vamos a hacer la relación y arrastraremos hasta el campo a relacionar con la otra tabla.
IMPORTANTE: ambos campos han de ser del mismo tipo (si uno es numérico, entero el otro lo deberá ser también).
Los campos que sean clave principal los veremos en negrita.
En el ejemplo anterior relacionamos el campo 'Código' de la tabla 'Clientes' con el campo 'Código cliente' de la tabla 'Pedidos'.
La casilla Exigir integridad referencial permitirá según el ejemplo, que cuando introduzcamos un código de cliente en la segunda tabla, deberá estar previamente también en la primera. Por ejemplo, no podremos introducir en Pedidos el código de un cliente que no esté en Clientes.
Activando la opción Actualizar en cascada permite que cuando se actualice un dato en la tabla origen se modifique automáticamente en la tabla destino. Por ejemplo, si cambiamos el código de un cliente en Clientes, se actualizará en Pedidos.
Activando la opción Eliminar en cascada haremos que al borrar un código de la tabla principal se borren todos los registros con el ese código en la otra tabla.
Una vez hechas las relaciones veremos una línea que muestra los campos relacionados, tal y como vemos en la imagen de la derecha.
Según los fundamentos teóricos sobre bases de datos, los tipos de relaciones entre tablas pueden ser:
Uno a uno (1:1): un determinado registro de una tabla puede estar relacionado sólo con un registro en la otra tabla.
Ejemplo: un registro de la tabla 'PERSONA' puede estar relacionado sólo con un registro de la tabla 'PARTIDA_NACIMIENTO', y un registro de 'PARTIDA_NACIMIENTO' puede estar sólo relacionado con un registro de 'PERSONA' (una partida de nacimiento pertenece sólo a una persona).
Uno a varios (1:N) / varios a uno (N:1): un determinado registro de una tabla puede estar relacionado con uno o varios registros en la otra tabla.
Ejemplo: un registro de la tabla 'CENTRO' puede estar relacionado con uno o varios registros de la tabla 'ALUMNOS', y un registro de 'ALUMNOS' sólo puede estar relacionado con uno de 'CENTRO' (un alumno sólo puede pertenecer a un centro).
Varios a varios (N:M): uno o varios registros de una tabla pueden estar relacionado con uno o varios registros en la otra tabla.
Ejemplo: un registro de la tabla 'PERSONAS' puede estar relacionado con uno o varios registros de la tabla 'PAISES' (una persona puede tener varias nacionalidades), y a su vez un registro de 'PAISES' puede estar relacionado con uno o varios registros de 'PERSONAS' (varias personas pertenecen a un determinado país).
Si hacemos clic en el botón Tipo de combinación que mostrará el siguiente cuadro de diálogo en el que podremos especificar algunas características.
Si seleccionamos las opciones dos o tres sólo se incluirán los registros de una de las tablas, mientras en la otra sólo se incluirán los que se indiquen en cada caso.
Por ejemplo, si seleccionamos la opción número dos, se incluirá la tabla 'Clientes' completa y sólo los registros de 'Pedidos' que tengan códigos de clientes existentes en 'Clientes'.
Siguiendo con el ejemplo, si seleccionamos la tercera opción se incluirá la tabla 'Pedidos' completa, y de 'Clientes' sólo aquellos que hayan realizado algún pedido.
Para que Access nos muestre el cuadro de diálogo Modificar relaciones hemos de hacer clic con el botón derecho sobre la línea que informa de la relación y seleccionar Modificar relación.
Para eliminar una relación tan sólo hemos de hacer clic sobre la línea que informa de la relación y pulsar la tecla Supr (Suprimir).