certmundo.
es‑mx

6 min de lectura

¿Cómo relacionar tablas en Access?

Relacionar tablas en Access significa conectar dos tablas mediante un campo común para que los datos fluyan entre ellas sin repetirse.

Esta conexión es el corazón de cualquier base de datos bien construida. Sin relaciones, tienes tablas aisladas que no sirven de mucho.

¿Por qué relacionar tablas?

Imagina que tienes una tienda como Liverpool. Guardas los datos de tus clientes en una tabla y sus pedidos en otra. Si no relacionas esas tablas, tendrías que escribir el nombre y teléfono del cliente en cada pedido. Eso genera errores y duplica información innecesariamente.

Con una relación, escribes los datos del cliente una sola vez. Cada pedido solo guarda el número de cliente, y Access encuentra el resto automáticamente. Así ahorras tiempo y evitas inconsistencias.

Los dos campos que forman una relación

Toda relación necesita exactamente dos campos: uno en cada tabla.

Clave principal (Primary Key): Es el campo único en la tabla principal. Ya lo viste en la lección anterior. Por ejemplo, el campo IDCliente en la tabla Clientes.

Clave foránea (Foreign Key): Es el campo en la tabla secundaria que almacena el mismo valor. Por ejemplo, el campo IDCliente en la tabla Pedidos. Este campo "apunta" al registro correcto en Clientes.

Ambos campos deben tener el mismo tipo de dato. Si IDCliente en Clientes es Autonumeración, entonces IDCliente en Pedidos debe ser Número (entero largo).

Tipos de relaciones en Access

Access maneja tres tipos de relaciones. Para este nivel, la más importante es la primera.

Tipo Descripción Ejemplo
Uno a varios Un registro en la tabla A corresponde a muchos en la tabla B Un cliente tiene varios pedidos
Uno a uno Un registro en A corresponde a exactamente uno en B Un empleado tiene un expediente
Varios a varios Muchos registros en A corresponden a muchos en B Varios productos en varios pedidos

La relación uno a varios es la más común en bases de datos para pequeños negocios en México. La usarás constantemente.

Ejemplo práctico: Clientes y Pedidos

Vamos a construir el ejemplo paso a paso. Supón que tienes estas dos tablas:

Tabla: Clientes

Campo Tipo de dato
IDCliente Autonumeración (clave principal)
Nombre Texto corto
Teléfono Texto corto
Ciudad Texto corto

Tabla: Pedidos

Campo Tipo de dato
IDPedido Autonumeración (clave principal)
IDCliente Número (entero largo)
FechaPedido Fecha/Hora
Total Moneda

El campo IDCliente aparece en ambas tablas. Ese es el puente entre ellas.

Cómo abrir la ventana de Relaciones

Access tiene una ventana dedicada para crear y ver relaciones. Sigue estos pasos:

  1. Cierra todas las tablas abiertas. Access no permite crear relaciones con tablas abiertas en Vista Hoja de datos.
  2. Haz clic en la pestaña Herramientas de base de datos en la cinta de opciones.
  3. Haz clic en el botón Relaciones. Se abre una ventana en blanco o con tus tablas si ya existen relaciones previas.
  4. Si la ventana está vacía, aparece automáticamente el cuadro Mostrar tabla. Si no aparece, haz clic derecho en el área blanca y selecciona Mostrar tabla.

Cómo agregar tablas a la ventana de Relaciones

En el cuadro Mostrar tabla verás la lista de todas tus tablas.

  1. Haz doble clic en Clientes. La tabla aparece en la ventana como un pequeño cuadro con sus campos listados.
  2. Haz doble clic en Pedidos. Aparece otro cuadro junto al primero.
  3. Cierra el cuadro Mostrar tabla con el botón Cerrar.

Ahora ves los dos cuadros flotando en la ventana. El campo IDCliente aparece en negrita en Clientes porque es la clave principal.

Cómo crear la relación arrastrando campos

Este es el paso central. Es visual y sencillo.

  1. Coloca el cursor sobre el campo IDCliente dentro del cuadro Clientes.
  2. Mantén presionado el botón izquierdo del mouse.
  3. Arrastra hacia el campo IDCliente dentro del cuadro Pedidos.
  4. Suelta el mouse. Aparece el cuadro de diálogo Modificar relaciones.

En ese cuadro verás confirmado: ClientesIDCliente relacionado con PedidosIDCliente. El tipo de relación aparece como Uno a varios.

La opción Exigir integridad referencial

Dentro del cuadro Modificar relaciones hay una casilla muy importante: Exigir integridad referencial.

Integridad referencial significa que Access no permitirá guardar un pedido con un IDCliente que no exista en la tabla Clientes. Protege la coherencia de tus datos.

Marca esa casilla. Luego verás dos opciones adicionales:

  • Actualizar en cascada los campos relacionados: Si cambias el IDCliente en Clientes, Access actualiza automáticamente ese número en todos los pedidos relacionados.
  • Eliminar en cascada los registros relacionados: Si eliminas un cliente, Access elimina automáticamente todos sus pedidos.

Para empezar, marca solo Exigir integridad referencial. Las opciones en cascada son útiles pero requieren más cuidado.

Haz clic en Crear. Access dibuja una línea entre los dos cuadros. En el extremo de Clientes aparece el número 1 y en el extremo de Pedidos aparece el símbolo (infinito). Eso confirma la relación uno a varios.

Cómo guardar la relación

Prensa Ctrl + G o cierra la ventana de Relaciones. Access pregunta si quieres guardar los cambios. Responde .

La relación queda registrada. Puedes volver a la ventana de Relaciones en cualquier momento para revisar o modificar las conexiones.

Verificar la relación con datos reales

Abre la tabla Clientes y captura dos registros de ejemplo:

IDCliente Nombre Teléfono Ciudad
1 Ana Torres 55-1234-5678 Ciudad de México
2 Carlos Vega 33-9876-5432 Guadalajara

Ahora abre la tabla Pedidos y captura:

IDPedido IDCliente FechaPedido Total
1 1 15/01/2025 $1,200
2 1 20/01/2025 $3,500
3 2 22/01/2025 $850

Observa que Ana Torres tiene dos pedidos (IDCliente = 1 aparece dos veces en Pedidos). Carlos Vega tiene uno. Esto es exactamente la relación uno a varios funcionando.

Ahora intenta capturar un pedido con IDCliente = 99, que no existe en Clientes. Access mostrará un mensaje de error y rechazará el registro. La integridad referencial está funcionando.

Errores comunes

Error 1: Tipos de datos incompatibles. Si IDCliente en Clientes es Autonumeración pero en Pedidos lo defines como Texto corto, Access no te permitirá crear la relación. Siempre verifica que el campo en la tabla secundaria sea Número, entero largo.

Error 2: Intentar relacionar sin clave principal. Si la tabla Clientes no tiene clave principal asignada, Access no puede establecer el lado "uno" de la relación. Asigna siempre la clave principal antes de abrir la ventana de Relaciones.

Error 3: Dejar tablas abiertas al crear relaciones. Access bloquea la creación o modificación de relaciones si alguna tabla involucrada está abierta. Cierra todas las tablas primero.

Error 4: No guardar la ventana de Relaciones. Muchos principiantes crean la relación pero cierran la ventana sin guardar. La relación desaparece. Siempre guarda con Ctrl + G o confirma cuando Access pregunte.

Resumen de pasos para crear una relación

Paso Acción
1 Cierra todas las tablas abiertas
2 Ve a Herramientas de base de datos → Relaciones
3 Agrega las tablas con Mostrar tabla
4 Arrastra el campo clave principal hacia el campo clave foránea
5 Marca Exigir integridad referencial
6 Haz clic en Crear
7 Guarda con Ctrl + G

Siguiendo estos siete pasos, cualquier base de datos pequeña —desde una papelería en Monterrey hasta un proveedor de FEMSA— puede manejar información relacionada de forma correcta y confiable.

Puntos clave

  • Una relación conecta dos tablas mediante un campo común: la clave principal en la tabla principal y la clave foránea en la tabla secundaria.
  • La relación más común es **uno a varios**: un cliente puede tener muchos pedidos, pero cada pedido pertenece a un solo cliente.
  • Activa **Exigir integridad referencial** para que Access rechace registros huérfanos, como un pedido con un cliente inexistente.
  • Ambos campos de la relación deben tener el mismo tipo de dato: Autonumeración en la tabla principal y Número (entero largo) en la tabla secundaria.
  • Cierra siempre todas las tablas antes de abrir la ventana de Relaciones y guarda los cambios con Ctrl + G al terminar.

Comparte esta lección:

¿Cómo relacionar tablas en Access? | Access Básico: Bases de Datos desde Cero | Certmundo