De lo comentado, se deduce que la relación entre dos tablas es única y se establece siempre a través de un campo común a ambas. No es necesario que el campo tenga el mismo nombre pero si es aconsejable acostumbrarse a nombrar los campos comunes del mismo modo, para evitar posibles equivocaciones a la hora de crear las relaciones.
Cuando se establece una relación entre tablas, una de ellas actuará como tabla principal y la otra como tabla relacionada.
Si entre dos tablas existe una relación y se crea otra, ésta sustituirá a la anterior, ya que no puede existir más de una relación entre dos tablas. Sin embargo, una tabla sí puede tener relaciones con más de una tabla, siempre y cuando sea con tablas distintas.
Access permite establecer tres tipos diferentes de relaciones entre dos tablas, y cada una de ellas tiene unas características que condicionarán el comportamiento final de la base de datos. Por ello, debe seleccionarse correctamente el tipo de relación entre las tablas para obtener el resultado esperado.
Los tres tipos de relaciones que existen son:
Las relaciones se establecen y modifican desde la ventana de relaciones, a la cual se
accede, cuando está activa la ventana de la base de datos, seleccionando la opción
Relaciones del menú Herramientas, o haciendo clic sobre el botón
Relaciones de la barra de herramientas.
Cuando se accede por primera vez a la ventana de relaciones, ésta aparece vacía:

Sobre la misma aparecerá el cuadro de diálogo que muestra la siguiente figura, desde el cual se pueden agregar las tablas que se van a relacionar entre sí. Los pasos a seguir son:

Es posible añadir nuevas tablas con las que crear nuevas relaciones en cualquier momento. El procedimiento a seguir en este caso es el que se expone a continuación:
Para eliminar tablas de la ventana de relaciones, basta con pulsar sobre la tabla que se quiere eliminar y pulsar la tecla Supr.
Al cerrar la ventana de relaciones, si en ella se ha realizado alguna modificación, se visualizará un mensaje de advertencia como el que muestra la figura siguiente, permitiendo guardar los cambios realizados o, por el contrario, salir sin guardar los mismos.

Las relaciones entre tablas se establecen en la ventana de relaciones, siendo el procedimiento el siguiente:




De este modo hemos establecido una relación entre la tabla de clientes y la de pedidos, al realizar la relación de está manera no establecemos ninguna seguridad, es decir, siguiendo con el ejemplo, tal y como hemos hecho esta relación, podríamos tener un pedido realizado por un cliente que no tuviéramos registrado en la tabla de clientes, es decir, un cliente cuyo nombre, compañía .... no lo conociéramos. Para evitar estos errores existe la integridad referencial, la cual estudiaremos a continuación.
Una vez establecidas las relaciones entre las distintas tablas, es posible modificar las mismas o incluso eliminarlas. Ambas operaciones se realizan desde la Ventana de relaciones, como ya se ha comentado anteriormente.
Para modificar una relación los pasos a seguir son:
Para eliminar una relación, basta con seleccionar la relación que se quiere eliminar y pulsar a continuación la tecla Supr (o seleccionar la opción Eliminar del menú Edición).
La integridad referencial es un conjunto de reglas de Access que garantizan que las relaciones entre los registros de tablas relacionadas son válidas y que no se eliminan ni modifican accidentalmente datos relacionados que satisfacen dicha relación. Sirve para aumentar la seguridad en el tratamiento de los datos que coexisten entre dos tablas relacionadas.
Se puede establecer integridad referencial cuando se cumplen todas las condiciones siguientes:
Cuando se establece la integridad referencial (marcando la casilla pertinente en el panel de modificar relaciones) se van a cumplir obligatoriamente, las siguientes reglas:
Si se quiere exigir el cumplimiento de estas reglas, hay que seleccionar la casilla de verificación Exigir integridad referencial al crear la relación (paso 3).

Al hacerlo se activarán las dos opciones que aparecen debajo:
| Muy Importante: Esta opción es muy arriesgada ya que en Access una vez que se elimina un registro ya no se puede volver a recuperar. Es fundamental llevar una buena política de copias de seguridad. |
Al establecer la integridad referencial en la figura siguiente se observa que la relación es uno (1) a varios (¥), un cliente (cuyos datos se encuentran en la tabla
Clientes) puede haber realizado varios pedidos (los datos de éstos se encuentran en la tabla
Pedidos).

En Access, es posible realizar consultas involucrando campos de varias tablas, de modo que el resultado de la consulta muestre información procedente de todas ellas. Para que una consulta pueda realizarse sobre campos de varias tablas, éstas deben tener un campo común, y las tablas deberán estar relacionadas por esos campos. Si no se hubieran establecido las relaciones anteriormente, habría que establecerlas en este momento (en la propia consulta), ya que si no existen relaciones entre las tablas, Access no encontrará relación entre los campos especificados en la ventana de diseño y no mostrará ningún registro como resultado de la consulta.
Una vez establecidas las relaciones entre las tablas el modo de generar una consulta de varias tablas es similar a la de creación de cualquier otra consulta, sin más que "subir" a la parte superior de la consulta las tablas necesarias (varias en lugar de una sola), y "bajar" los campos a incluir en la consulta desde cada correspondiente tabla en la que se encuentren.
Ejemplo-1: Supongamos que en la federación de golf (siguiendo con el ejemplo de la base de datos Socios del Club) se ha asignado un responsable tutor por cada uno de los niveles de juego de forma que a cada jugador le pasa a corresponder un responsable deportivo en virtud de si su nivel de juego es principiante, medio o senior. Dicho tutor, tiene unos datos que lo identifican, tales como son su nombre, apellidos, teléfono de contacto, fax, dirección de e-mail, dirección de oficina...Sería preciso que en el registro de cada socio se dispusiera de toda la información de su tutor o responsable deportivo.
Tras un análisis de la nueva situación, se deduce que si en la tabla socios agregamos tantos campos como para albergar la información de dichos tutores, a todos los socios con el mismo nivel de juego, les va a corresponder el mismo tutor, con lo que todos los datos del tutor estarían repetidos de forma masiva y redundante en la tabla socios (ocupando mucho espacio y lentificando el proceso básicamente). Quizás la mejor solución sea, en este caso, definir otra tabla llamada Tutores, en la que deberá existir un registro para cada nivel de juego y por lo tanto para cada tutor. La estructura de la tabla sería la siguiente:

Se introducirán los datos de los niveles junto a sus responsables...

Pero, ¿De que manera podríamos enlazar o relacionar esta nueva tabla de tutores con la gran tabla de socios?
Será necesario relacionar el nivel de juego de cada socio de la tabla de socios con en codigo de nivel de la tabla de tutores. Pero como son de distinto tipo (texto -en socios- frente a numérico -en tutores-) no se podrá. La solución es sustituir en la tabla de socios el campo nivel por el campo codnivel (por ejemplo) de tipo numérico y luego colocar a cada socio un código (el que corresponde a su nivel de juego) en este campo de acuerdo a los niveles y tutores introducidos en la tabla de tutores (1, 2 o 3).
1.- Se deberá crear en la tabla de socios el campo codnivel.
2.- Mediante tres consultas de actualización, a aquellos que tengan nivel de juego principiante, actualizaremos ese nuevo campo codnivel (de la tabla de socios) a 1. De igual manera, los socios con nivel senior actualizaremos a 2 su campo codnivel. Y a 3 el campo codnivel de los socios con nivel senior.

3.- A continuación deberemos (de forma recomendada, aunque en este ejemplo no lo borremos) eliminar el campo nivel de la tabla socios ya que, a partir de ahora, se conocerá el nivel de juego gracias a un código en la tabla de socios, que se corresponderá con uno de los niveles y tutores de la tabla tutores.
4.- Ahora tendremos que establecer la relación (en la pantalla de relaciones) de acuerdo a la siguiente pantalla:

A partir de este momento, podríamos crear consultas, formularios e informes en donde aparecen ambas tablas implicadas, eso si, previamente relacionadas.
Ejemplo-2: Supongamos un ejemplo superficial de gestión de sanciones de tráfico en una localidad. Existen diferentes tipos de sanción (tipos de multa), diferentes guardias o agentes, los vehículos, los cuales pertenecen a un ciudadano o propietario, y... por supuesto sanciones. Las sanciones las "pone" un agente a un vehículo, un determinado día, a una hora, en un lugar, y esa infracción es de un determinado tipo de entre las que se pueden sancionar. Un ciudadano puede tener mas de un vehículo.
La información habrá que disgregarla en diferentes tablas, (la de vehículos se supone que la facilita tráfico con todos los vehículos), que deberán estar... Relacionadas. La siguiente imagen muestra un posible planteamiento.
