Volver al contenido principal

Las relaciones

En una base de datos relacional, tan importante son las tablas bidimensionales de datos como las relaciones. Sin estas, seria imposible extraer información útil. En estos momentos, por ejemplo, sería imposible conocer qué servicios se le han prestado a un cliente a pesar de que toda la información se encuentra distribuida en las distintas tablas. Pero Access no sabe aún cómo establecer las relaciones.

Existen dos sistemas para crear relaciones entre las tablas. Nosotros recomendamos encarecidamente usar el Asistente de búsquedas, ya que nos permite:

  • Crear la relación.
  • Facilitar la introducción de datos, al no ser necesario teclear el dato en el campo que nos sirve de para relacionar dos tablas.

El segundo sistema es crear la relación en la ventana Relaciones. Aunque el proceso es más sencillo, solo permite crear la relación, no facilitando la introducción de datos.

Recordemos cuál es nuestro diseño lógico:

Las relaciones a crear son:

Peluqueros!Cod_Peluquero con Clientes!Cod_Peluquero_Favorito Uno a varios
Clientes!DNI con Visitas!DNI Uno a varios
Visitas!Cod_Visita con Servicios_Prestados!Cod_Visita Uno a varios
Servicios!Cod_Servicio con Servicios_Pestados!Cod_servicio Uno a varios
Peluqueros!Cod_Peluquero con Servicos_Prestados!Cod_peluquero Uno a varios


Hemos usado la nomenclatura típica de Access: Nombre de la tabla!Nombre del campo. Así es como se identifican los campos en esta aplicación.

Para hacer uso del Asistenta para Búsquedas, debemos decidir en cuál de los dos campos relacionados lo usamos. Saberlo es bien sencillo: basta con pensar que en el campo en que lo usemos se irá a buscar el dato al otro campo.

Por ejemplo, en los campos DNI de Clientes y Visitas: ¿En cuál usamos el Asistente de búsquedas? Parece claro que el campo DNI de Visitas ya que desde ese campo se irá al campo DNI de clientes para buscar el dato. No tiene sentido que demos de alta una visita de un cliente sin que éste haya sido dado de alta previamente en la tabla Clientes.