Establecer relaciones entre tablas

Como requisito indispensable para establecer una relación entre dos tablas es necesario que ambas tablas tengan un campo en común. Observa la figura 2.35.

Figura 2.35 

Muy importante, los campos que se utilicen para establecer la relación entre las dos tablas deben ser del mismo tipo (INTEGER, TEXTO, SMALL INTEGER, etcétera). Habitualmente se suelen utilizar tipos enteros (INTEGER) para este propósito, aunque nos valdría igualmente cualquier otro tipo siempre y cuando sea el mismo en las dos tablas. Además, debes tener en cuenta lo siguiente:

  • La propiedad Tamaño del campo debe ser igual en ambas tablas.
  • Si el campo en la tabla primaria está definido como de Valor automático en la tabla secundaria debe estar definido como INTEGER.
  • El campo común debe ser Clave principal en la tabla primaria.
Icono IDevice

Importante

Después de leer estas condiciones seguro que cobra mucho más sentido la importancia de una buena planificación. Imagina que tienes que cambiar el tipo de datos de una tabla para poder establecer una relación y pierdes todo su contenido.
Icono IDevice

Actividad 9

Para completar correctamente esta actividad te sugerimos que utilices la base de datos de ejemplo proporcionada en este módulo, donde ya se encuentran todas las tablas necesarias. Tú mismo has añadido algunas más en las actividades anteriores, y hemos incluido algunos datos para que puedas trabajar más cómodamente.

Veamos en la siguiente actividad los pasos necesarios para establecer relaciones en OpenOffice Base. Más concretamente, crearemos la primera relación entre las tablas Alumnos y Cursos:

  1. Desde la ventana principal de OpenOffice Base, ejecuta el comando Herramientas > Relaciones para mostrar la ventana Diseño de relación.
  1. Si no hemos definido aún ninguna relación, Base mostrará por defecto el cuadro de diálogo Agregar tablas. Si por algún motivo no aparece este cuadro de diálogo, utiliza el botón que hemos resaltado en la misma figura. Para empezar, haz doble clic sobre la tabla Alumnos y sobre la tabla Cursos.
  1. En la ventana Diseño de relación aparecerán las dos tablas junto con todos sus campos. Haz clic en el botón Cerrar del cuadro de diálogo Agregar tablas.
  1. A continuación vamos a establecer la relación entre el campo Grupo de la tabla Alumnos y el campo IdCurso de la tabla Cursos. Para ello, haz clic en el campo IdCurso de la tabla Cursos y sin soltar, arrastra hasta caer sobre el campo Grupo de la tabla Alumnos. Aparecerá una línea que unirá ambos campos, indicando que se ha establecido la relación.

En el siguiente vídeo puedes comprobar de forma visual toda la secuencia de pasos necesaria para establecer la relación entre dos tablas.

Icono IDevice

Nota

Junto a IdCurso aparece un 1 y una pequeña n junto al campo Grupo indicando que se trata de una relación UNO A MUCHOS en la que cada alumno pertenece a un grupo y cada grupo puede tener asociado varios alumnos.
Icono IDevice

Actividad 10

  1. A continuación debemos establecer el resto de relaciones de nuestra base de datos. Si no te encuentras en la ventana de relaciones, elige el menú Herramientas y selecciona el comando Relaciones. A continuación, haz clic en el icono Agregar tablas Botón agregar tablas.
  2. Añade todas las tablas disponibles y cuando termines, haz clic en el botón Cerrar del cuadro de diálogo Agregar tablas.
  3. Establece las relaciones según el resultado que puedes comprobar en la figura 2.36. Por ejemplo, haz clic en el campo Departamento de la tabla Profesores y arrastra hasta el campo IdDepartamento de la tabla Departamentos. Con esto ya tendrás definida una nueva la relación entre estas dos tablas.
  4. Recuerda que puedes hacer clic sobre el título de cualquiera de las tablas y moverla hasta la posición que desees dentro de la ventana de relaciones. Este aspecto es sobre todo por comodidad y por mejorar visualmente la comprensión del esquema de relaciones.

Figura 2.36

Icono IDevice

Truco

Otra forma de establecer una relación entre dos tablas es utilizar el botón Botón relación entre tablassituado en la barra de herramientas. En este caso, OpenOffice Base muestra el cuadro de diálogo que puedes ver en la figura 2.37. En él, debemos seleccionar en las listas desplegables situadas en la parte superior, las dos tablas implicadas en la relación para después seleccionar los campos que se vincularán.

Figura 2.37