3.-Los "buscadores" de información: Las Consultas

Ahora parecería razonable abordar la creación del tercer formulario, el que nos gestionase la tabla "Libros". Pero ese formulario es algo más complejo, ya que va a hacer referencia a otras dos tablas... por lo tanto, hay que hacer algo antes: una "consulta"

Las consultas son acciones que se llevan a cabo sobre la información de una base de datos de manera que se extraiga de ella un subconjunto específico, o una presentación particular, o unos cálculos derivados de los valores...

Las consultas pueden gestionarse directamente, o bien a través de un formulario que se apoye en el resultado de una de esas búsquedas. Lo que haremos en este ejemplo es esta segunda opción: crearemos una consulta sobre los libros, y haremos un formulario que nos gestione esa consulta, utilizándolo después para la introducción de datos.


3.01
-Lo primero que debemos hacer es "explicarle" a la BD cómo se relacionan entre sí las tablas que la componen.

-Para hacerlo, se clica en el icono de Relaciones, el segundo a la izquierda de la ayuda, tal como se ve en la figura adjunta.


3.02
-Se abre así una ventana en la que vamos a poder definir esas relaciones.

3.03
-Lo primero de todo es seleccionar qué tablas forman parte de la relación. En nuestro ejemplo, las tres están relacionadas, así que las vamos seleccionando y agregando.

-Una vez están las tres, cerramos este cuadro de diálogo. El resultado que debe verse es más o menos éste.


Ahora podemos empezar a definir las dos relaciones que hay entre esas tres tablas:

Primera relación

: el campo "Autor" de la tabla "Libros" está relacionado con el campo Id_Autor de la tabla "Autores"

Segunda relación

: el campo "Editorial" de la tabla "Libros" está relacionado con el campo Id_Editorial de la tabla "Editoriales"
3.04
-Para establecer la primera relación, se clica en el campo "Autor" de la tabla "Libros" y se arrastra el cursor hasta soltarlo encima del campo "Id_Autor" de la tabla "Autores". Aparece un cuadro de diálogo como el de la figura, el cual se configura tal cual se ve, y se le dice Crear

3.05
1-Lo mismo se hace con la segunda relación, arrastrando el cursor desde el campo "Editorial" de la tabla "Libros" hasta el campo "Id_Editorial" de la tabla "Editoriales.

2-En ambos casos, hay que asegurarse de que se configura la relación tal como se especifica en la figura anterior, exigiendo integridad referencial y actualización en cascada.

3-Al acabar, debe verse algo similar a esta figura. (Debe grabarse este diseño de relaciones... el icono en forma de disquet lo hace directamente; no hay que poner ningún nombre)


Estas relaciones así creadas se interpretan fácilmente: un Autor (su nombre, en formato texto), caracterizado por su Id_Autor (autonumérico), puede aparecer en muchos registros de la tabla Libros, que habrá guardado ese Id_Autor en su campo Autor (numérico) , y análogamente con el nombre de las editoriales.

Es evidente que este sistema minimiza el consumo de espacio en la tabla "Libros", ya que no guarda los nombres completos de los autores ni de las editoriales, sino simplemente el número que los representa.

Por otro lado, no se puede introducir ningún dato que no haya pasado antes por las tablas de autores y editoriales, con lo que el riesgo de errores en la introducción disminuye enormemente.

Y si alguna vez hay que cambiar un nombre de editorial, p. ej, se cambia en la tabla Editoriales y en la tabla Libros no hay que tocar nada, ya que sólo almacena la referencia numérica y no el texto completo.


3.06
-Una vez definidas las relaciones entre las tablas de la BD, podemos ya generar la consulta sobre los Libros que luego usaremos en el formulario correspondiente. Empezamos donde siempre, seleccionando la pestaña Consultas y Nuevo

3.07
-Escogemos el Asistente para consultas sencillas y después Aceptar

3.08
1-De la tabla "Libros" pasamos al cuadro de la derecha todos los campos, excepto el primero.

2-Una vez hecho, seleccionamos Siguiente


3.09
-Ponemos el nombre y Terminar

3.10
-Ha de verse un resultado como éste, evidentemente sin datos ya que no hemos introducido aún ninguna información sobre los libros.

Ahora ya podemos pasar a construir un formulario que utilice esa consulta recién creada.