Usar relaciones

Crear relaciones de varios a varios

Su explorador no admite vídeo. Instale Microsoft Silverlight, Adobe Flash Player o Internet Explorer 9.

¿Qué es una relación de varios a varios?

Las relaciones de varios a varios son las más utilizadas. Proporcionan información importante, como con qué clientes han contactado sus vendedores y qué productos se encuentran en los pedidos de los clientes.

Una relación de varios a varios se da cuando uno o más elementos en una tabla puede tener una relación con uno o más elementos de otra tabla. Por ejemplo:

  • La tabla Pedido contiene pedidos de varios clientes (que se muestran en la tabla Clientes) y un cliente puede hacer más de un pedido.

  • La tabla de productos contiene los productos individuales que vende, que forman parte de varios pedidos en la tabla Pedido.

  • Un pedido puede incluir una instancia (o más de una instancia) de un producto específico o una instancia (o más de una instancia) de varios productos.

Por ejemplo, número de pedido 1012 de la clienta Verónica Fuentes podría contener un ejemplar de los productos 12 y 15 y cinco del producto 30.

Crear relaciones de varios a varios

Las relaciones de varios a varios se crean forma distinta a las de uno a uno o uno a varios. Para esas relaciones, basta con conectar los campos adecuados con una línea. Para crear relaciones de varios a varios, deberá crear una nueva tabla que se conecte con las otras dos. Esta tabla se denomina tabla de nivel intermedio (o, a veces, tabla de vinculación o unión).

En el escenario descrito anteriormente, se crea una tabla Detalles de pedidos con registros que contienen el Id. de la tabla Pedidos y el Id. de la tabla Productos para cada elemento. Creará una clave principal para esa tabla con las claves combinadas de las otras dos tablas.

En nuestro escenario, el número de pedido 1012 de Verónica Fuentes contiene los productos 12, 15 y 30. Eso significa que nuestras entradas de Detalles del pedido tienen este aspecto:

Id. de pedido

Id. de producto

1012

12

1012

15

1012

30

Verónica ha pedido un ejemplar de los productos 12 y 15 y cinco del producto 30. No podemos agregar otra fila con 1012 y 30 porque el Id. de pedido y el Id. de producto combinadas constituyen la clave principal y las claves principales deben ser únicas. En su lugar, se agregue el campo Cantidad a la tabla Detalles de pedido.

Id. de pedido

Id. de producto

Cantidad

1012

12

1

1012

15

1

1012

30

5

Crear una tabla intermedia

  1. Seleccione Crear > Tabla.

  2. Seleccione Guardar Guardar .

  3. Como nombre de la tabla, escriba un título descriptivo. Para indicar su propósito, es posible que desee incluir unión o nivel intermedio en el nombre de la tabla.

Crear campos de la tabla de nivel intermedio

Como la primera columna de tabla, Access agrega automáticamente un campo de Id. Cambie ese campo para que coincida con el Id. de la tabla en la relación de varios a varios. Por ejemplo, si la primera tabla es una tabla de pedidos denominada Id. de pedido y su clave principal es un número, cambie el nombre del campo Id. en la nueva tabla por Id. de pedido y use el tipo de datos número.

  1. En la vista Hoja de datos, seleccione el encabezado de columna Id. y escriba el nuevo nombre para el campo.

  2. Seleccione el campo cuyo nombre acaba de cambiar.

  3. En la pestaña Campos, en Tipo de datos, seleccione un tipo de datos que coincida con el campo de la tabla original, como Número o Texto corto.

  4. Seleccione Hacer clic para agregar y después seleccione un tipo de datos que coincida con la clave principal de la segunda tabla. En el encabezado de columna, que ya está seleccionado, escriba el nombre del campo de la clave principal de la segunda tabla, como Id. del producto.

  5. Si necesita realizar un seguimiento de cualquier otra información acerca de estos registros, como la cantidad de artículos, cree campos adicionales.

Combinar campos de Id. principal

Ahora que tiene campos con los Id. de las dos tablas que va a conectar, cree una clave principal basada en esos Id. en la tabla de nivel intermedio.

  1. En la vista Diseño, abra la tabla intermedia.

  2. Seleccione las filas que contienen los Id. (Si ha seguido el procedimiento anterior, son las dos primeras filas).

  3. Seleccione Diseño > Clave principal.
    Aparecen iconos de clave junto a ambos campos Id.

    Captura de pantalla de la clave principal en la tabla

Conectar las tres tablas para crear la relación de varios a varios

Para completar la relación de varios a varios, cree una relación uno a varios entre el campo de clave principal en cada tabla y campo coincidente en la tabla de nivel intermedio. Para más información sobre cómo hacer esto, vea Introducción a las relaciones de tabla.

Cuando haya terminado, las relaciones deberían tener un aspecto parecido a este:

Captura de pantalla de las conexiones entre tres tablas de datos

¿Quiere más?

Introducción a las relaciones de tabla

Crear una relación

Eliminar una relación

Aprendizaje de Excel

Aprendizaje de Outlook

Use una relación de varios a varios entre las tablas cuando un solo elemento de la tabla A pueda estar relacionado con muchos elementos de la tabla B y viceversa. Por ejemplo, un producto puede aparecer en varios pedidos y un pedido puede contener varios productos.

En esta demostración, ampliaremos nuestra base de datos en un sistema básico de seguimiento de pedidos con tablas de productos y pedidos.

Aprenderemos sobre la tabla de unión y la clave compuesta y las usaremos con nuestras otras tablas para crear la relación de varios a varios.

El primer paso para crear una relación de varios a varios es crear una tabla nueva.

Se denomina “tabla intermedia” y la usaremos para almacenar los datos de las otras tablas implicadas en la relación.

La tabla intermedia también se conoce como la tabla de "vinculación" o de "unión".

Lo siguiente que hay que hacer es crear un par de relaciones uno a varios entre la tabla de unión y las otras tablas implicadas en la relación.

Como parte del proceso, debe identificar estos dos campos como clave principal de la tabla de unión. Se convertirá en la "clave compuesta".

Crearemos la tabla de unión en la vista Diseño, así que seleccionamos Crear, Diseño de tabla. Aquí está nuestra nueva tabla en blanco.

Ahora vamos a abrir las tablas Productos y Pedidos.

Echemos un vistazo a las claves principales de ambas tablas. La tabla Productos usa un campo Autonumeración, denominado Id. del producto.

La clave principal de la tabla Pedidos se denomina Id. de pedido y también es un campo Autonumeración.

Ahora volvemos a nuestra tabla de unión, en la que escribimos el Id. del producto, seleccionamos Número, escribimos el Id. de pedido y volvemos a seleccionar Número.

Ahora, vamos a seleccionar ambos campos. Para ello, sitúe el puntero en el cuadro gris junto a cualquiera de los campos y arrástrelo.

Con ambos campos seleccionados, en la cinta de opciones, seleccione Clave principal. Se crea la clave compuesta de la tabla de unión.

Tener ambos campos en la clave compuesta asegura que se identifique exclusivamente cada pedido y todo el contenido DE cada pedido .

Pulse Control G para guardar la tabla de unión y denomínela Detalles de pedidos.

Ahora podemos crear las relaciones. Para empezar, cierre todas las tablas abiertas. Seleccione Herramientas de base de datos y después Relaciones.

En la pestaña Diseño, seleccione Mostrar tabla. Agregue las tablas Productos, Pedidos y Detalles de pedidos. Cierre el cuadro de diálogo.

Organice las tablas de forma que Detalles de pedidos, la tabla de unión, esté en la parte central. Arrastre el campo Id. de pedido de la tabla Pedidos sobre la tabla de unión.

En el cuadro de diálogo Modificar relaciones, seleccione Exigir integridad referencial y luego seleccione Crear para crear la relación.

Haga lo mismo con el campo Id. del producto. Seleccione Exigir integridad referencial, seleccione Crear y ya está.

Presione Control G para guardar los cambios en el diseño del diagrama de relaciones.

Ahora ha usado una tabla de unión y la clave compuesta con las tablas existentes para crear una relación de varios a varios en la base de datos de Access.

Ampliar sus conocimientos
Explorar los cursos
Obtener nuevas características primero
Únase a los participantes de Office Insider

¿Le ha sido útil esta información?

¡Gracias por sus comentarios!

Gracias por sus comentarios. Quizá le interese ponerse en contacto con uno de nuestros agentes de soporte de Office.

×