Está en la página 1de 53

Prctica 3

################################

Bases de datos con


LibreOffice Base

Informtica Bsica
Grado en: Ingeniera Informtica,
Matemtica Computacional

Material de apoyo

IBREOFFICE es un paquete ofimtico libre, de cdigo abierto y distribucin gratuita que incluye, entre otros,
un procesador de textos, una herramienta para el desarrollo de hojas de clculo, un programa para realizar
presentaciones y, lo que ms nos interesa en esta prctica, una herramienta para la creacin y manejo de
bases de datos sencillas (en contraposicin a la complejidad que supone la gestin del gran volumen de datos
de las bases de datos corporativas). Es un programa multiplataforma, que funciona en Linux, Windows, Mac
OS X y otros sistemas operativos de la familia Unix, y que constituye la alternativa libre y funcional al paquete
Office de Microsoft.
En este material de apoyo, te mostraremos las funcionalidades bsicas del programa, que te permitirn poder
crear y gestionar con xito bases de datos pequeas. Tambin veremos cmo elaborar consultas e informes,
que proporcionan a los usuarios finales un acceso fcil a los datos. Es importante que te familiarices con este
material para que puedas abordar con xito la realizacin de los ejercicios planteados en el boletn de la prctica
3. Tambin resultar conveniente que, previamente, estudies con detenimiento los contenidos del Tema 1 de
teora, en particular la ltima seccin, que explica los conceptos bsicos del modelo relacional de bases de
datos que daremos por sentados en este texto.

ndice
1. Creacin de una base de datos

2. Creacin y edicin de tablas en la base de datos


2.1. Nombre y tipo de los campos . . . . . . . . . . . .
2.2. Clave primaria . . . . . . . . . . . . . . . . . . . .
2.3. Guardar una tabla . . . . . . . . . . . . . . . . . .
2.4. Gestionar registros . . . . . . . . . . . . . . . . .

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

.
.
.
.

5
6
7
9
10

3. Relaciones entre tablas


12
3.1. Relacin uno a muchos (1:M) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
3.2. Relacin muchos a muchos (M:M) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4. Diseo de consultas
15
4.1. Vista diseo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.2. Asistente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21
4.3. Vista SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
5. Generacin y uso de vistas

26

6. Formularios
30
6.1. Creacin mediante el asistente . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
6.2. Creacin en vista diseo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
7. Informes

46

-1-

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Nota
Este material de apoyo es el mismo que se elabor para la herramienta Base de OpenOffice.org en el curso 2010/2011.
En el presente curso usaremos LibreOffice, que es un fork de OpenOffice.org. Si no sabes lo que es un fork en el contexto
del desarrollo de software, bscalo por Internet o consulta con el profesor. La funcionalidad de la herramienta es la misma
y se llaman igual por lo que nos hemos limitado a cambiar los nombres en el texto y a sustituir unas pocas imgenes.
El resto del material no cambia, ya que, insistimos, se trata del mismo programa. S que es posible que observes algunas
pequeas diferencias sin importancia en algunas imgenes y nombres de opciones de mens, pero que no son relevantes
para la comprensin del texto.

Bibliografa
LVARO E. P RIETO R AMOS: Tutorial de OpenOffice.org Base. Tutorial para usuarios de Windows de la herramienta
Open Office Base. http://tutorialopenofficebase.wordpress.com/. ltima actualizacin: enero de
2008. Te recomendamos que le eches un vistazo como material complementario a ste. Est muy bien explicado e
incluye ms detalles que los que aqu te proporcionamos. Como ya hemos comentado LibreOffice y OpenOffice.org
son muy similares en la actualidad por lo que este tutorial contina siendo plenamente vlido.

1.

Creacin de una base de datos

LibreOffice, LO de ahora en adelante para abreviar, es una suite ofimtica libre (de cdigo abierto) y distribucin gratuita
similar en cuanto a funcionamiento y prestaciones al paquete ofimtico Office de Microsoft. De la misma manera, incluye
un procesador de textos, hoja de clculo, herramienta para el diseo de presentaciones y base de datos, entre otras cosas.
El vocablo suite hace referencia a una recopilacin de programas capaces de interactuar entre ellos en mayor o menor
medida, lo que se conoca tradicionalmente como paquete integrado. El trmino ofimtica hace referencia al trabajo habitual
en una oficina: llevar el papeleo (documentos y facturacin) y las cuentas. En este sentido, los procesadores de texto y las
hojas de clculo seran las herramientas bsicas empleadas en la gestin de una oficina. No obstante, puede pensarse que
igualmente resulta necesario un gestor de bases de datos sencillas (para, por ejemplo, llevar un registro de clientes y poder
realizar servicios de mailing automtico). En cuanto a las presentaciones, quisiramos apuntar que este tipo de programas
se ha venido incluyendo en las suites ofimticas desde hace ya algunos aos, sin duda a semejanza de lo ocurrido con el
Office de Microsoft.
En este material de apoyo nos vamos a centrar en la herramienta de gestin de bases de datos sencillas, que sera el
equivalente al programa Access de Microsoft. Se trata del programa LO Base, al que llamaremos Base en adelante para
abreviar. Como hilo conductor para ilustrar los aspectos ms relevantes del funcionamiento de Base seguiremos el mismo
ejemplo empleado en el cuaderno de teora correspondiente al Tema 1: tenemos una serie de pelculas en nuestra casa, en un
formato determinado (DVD, DivX, XviD, VCD), almacenadas en unos cuantos estuches. Pretendemos guardar una serie de
datos para cada pelcula (ttulo, nombre del director, fecha de estreno en Espaa,. . . ) y tambin para cada estuche. Tambin
queremos guardar una serie de datos relacionados con los actores que intervienen en las pelculas que tenemos (su nombre,
nacionalidad, fecha de nacimiento, personajes que interpretan en sus pelculas,. . . ). Para almacenar toda esta informacin y
poder automatizar una serie de consultas, gestionaremos la creacin de una base de datos mediante Base.
Cuando arrancamos Base, a no ser que lo hagamos abriendo una base de datos previamente creada, se ejecutar el
asistente para la creacin de bases de datos (vase la Figura 1(b)). Podemos ejecutar Base bien desde la pantalla principal
de LO (vase la Figura 1(a)), bien desde el men del lanzador de aplicaciones, en la seccin Oficina, entrada Base de
datos para conocer los detalles exactos en los equipos de las aulas informticas consulta el boletn de la prctica.
En cualquier caso, llegaremos a la ventana del asistente para bases de datos de LO (vase la Figura 1(b)) tal como
comentamos en el prrafo anterior. El primer paso consiste en seleccionar la base de datos que queremos usar. Tenemos tres
posibilidades para ello:
I Crear una nueva base de datos, que es la opcin que aparece marcada en la imagen de la Figura 1(b), ya que tenemos
que crear la nueva base de datos para nuestro ejemplo de las pelculas.
I Abrir una base de datos ya existente (guardada en un fichero), bien una de las que aparezca en la lista de usadas
recientemente, bien otra que podamos abrir con el dilogo para la navegacin por directorios asociado al botn
Abrir. Esta opcin es equivalente a abrir directamente el fichero con la base de datos desde el sistema de ficheros,
lo que nos conduce, en ambos casos, a la ventana central para la gestin de la base de datos que se muestra en la
Figura 3.

-2-

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

(a) Pantalla principal de LO.

(b) Ventana inicial del asistente para bases de datos del programa
Base de LO.
Figura 1: Arranque de Base.

I Conectar con una base de datos existente, lo que implica configurar y emplear un software especfico (JDBC, Oracle,
MySQL, etc.) para la conexin (puede ser remota) con otros sistemas de gestin de bases de datos (SGBD en adelante
para abreviar). Nosotros no emplearemos esta opcin, pues se escapa un poco de los objetivos de esta prctica.

(a) ltimo paso del asistente para bases de datos: registramos la


nueva base de datos y la abrimos para utilizarla.

(b) Guardamos la base de datos creada en el sistema de ficheros


de nuestro ordenador.

Figura 2: Asistente para la creacin de bases de datos en Base.

Una vez seleccionada la opcin que permite crear una nueva base de datos, pinchamos el botn Siguiente y pasamos al
siguiente y ltimo paso, donde se muestra la ventana que aparece en la Figura 2(a). Registrar la base de datos sirve para
indicar a LO dnde localizar los datos y cmo se organizan. Es decir, debemos registrar nuestra base de datos si queremos
que los datos que guardemos sean localizables desde otras aplicaciones de la suite como, por ejemplo, el procesador de
textos Writer o la hoja de clculo Calc. Por ejemplo, podra estar interesado en preparar un documento de texto que
mostrase una tabla con la informacin de todas las pelculas que tengo guardadas en un estuche concreto. Pero para poder
hacer esto, necesito registrar previamente la base de datos.
Resulta obligatorio marcar la opcin Abrir la base de datos para editar si quiero comenzar a trabajar con ella, ya que, si
no, despus de crearla Base terminara su ejecucin. Sin embargo, la opcin siguiente, Crear tablas usando el Asistente
para tablas, no es necesario marcarla a no ser que pretendamos comenzar el trabajo con la base de datos creando tablas (lo
cual, por otra parte, resulta lo habitual). Nosotros no la marcaremos y realizaremos el proceso de creacin de tablas desde
la ventana central de gestin (vase Figura 3). Adems, crear tablas usando el asistente limita bastante las posibilidades que
Base nos ofrece para acometer esta tarea. Una vez hayamos terminado con la seleccin de las diversas opciones haremos
clic en el botn Finalizar para concluir el proceso.
Ahora, Base pide que seleccionemos el directorio donde vamos a guardar nuestra base de datos y el nombre de la misma,
tal como ilustra la imagen de la Figura 2(b). En nuestro ejemplo, la base de datos se llamar Pelis. El programa automticamente aadir la extensin .odb Open Document Base, base de datos en formato Open Document que identifica a las
bases de datos de LO fjate que est marcada la casilla Ampliacin aut. nombre de archivo.

-3-

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 3: Ventana para la gestin de la base de datos en Base.

En este momento, bien porque hayamos creado una nueva base de datos o bien porque hayamos abierto una ya existente,
aparece la ventana central para la gestin de la base de datos que ofrece Base y que ilustramos en la Figura 3. Podemos
considerar que esta ventana central se divide en 4 partes:
I En la parte izquierda tenemos una serie de iconos que nos permiten elegir el tipo de objeto de la base de datos
con el que queremos trabajar. Base proporciona cuatro tipos objetos: tablas, consultas, formularios e informes. El
primero de estos objetos (las tablas) permite definir las entidades que conforman nuestra base de datos segn el
modelo relacional (repasa los apuntes del Tema 1), mientras que el resto permiten obtener informacin de forma ms
o menos elaborada. Ms adelante, a medida que los vayamos utilizando, veremos para qu sirve cada uno de ellos y
aprenderemos a crearlos y configurarlos. Cuando queramos trabajar con cualquiera de estos objetos (crear una tabla
o una consulta, o bien elaborar un formulario o un informe) simplemente hemos de pinchar con el ratn en el icono
correspondiente y tanto la zona central como la inferior cambiarn sus opciones en consecuencia. En la Figura 3
puede apreciarse que hemos seleccionado el objeto Tablas.
I En la zona central aparecen las acciones que podemos llevar a cabo con el tipo de objeto seleccionado a la izquierda.
En la Figura 3 podemos apreciar que tenemos tres acciones que podemos realizar con las tablas: crear una tabla con
la herramienta de diseo, usar el asistente para crear una tabla y crear una vista.
I En la zona inferior, aparecen todos los objetos del tipo seleccionado que hemos creado en la base de datos. En nuestro
ejemplo, no aparece ninguno pues todava no hemos creado ninguna tabla.
I En la zona superior se encuentran los distintos mens que agrupan las opciones de trabajo de Base, as como la
barra de herramientas que muestra los iconos asociados con las acciones ms habituales para su acceso directo. A
continuacin, comentaremos brevemente el contenido de los diversos mens.
El contenido del men Archivo es el tpico de las aplicaciones ofimticas (como un procesador de textos o una hoja de
clculo), con opciones para abrir o guardar una base de datos existente, cerrar aqulla con la que estamos trabajando, crear
una nueva o terminar la ejecucin de LO, entre otras. En el men Editar aparte de las opciones comunes para deshacer la
ltima operacin efectuada si es posible (o rehacerla) o para copiar, cortar y pegar, tenemos una serie de opciones que se
activarn o no en funcin del objeto seleccionado en la lista de la parte inferior (que, recordemos, muestra todos los objetos
creados en la base de datos del tipo seleccionado a la izquierda) y que permiten abrirlo (para introducir datos), editarlo
(para cambiar su diseo), cambiarle el nombre o borrarlo. Tambin podemos arrancar los asistentes para la creacin de
formularios e informes desde ah.
El men Ver tiene la opcin Objetos de base de datos que permite seleccionar el tipo de objeto con el que queremos
trabajar, de forma anloga a los iconos que aparecen en la zona izquierda de la ventana. Adems, podemos aadir ms iconos
a la barra de herramientas o personalizarla (cambiando iconos) usando la opcin Barras de herramientas. La opcin

-4-

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Ordenar permite mostrar en orden alfabtico ascendente o descendente la lista de objetos creados del tipo seleccionado
que aparece en la zona inferior de la ventana, mientras que la opcin Vista previa permite previsualizar en el recuadro gris
que hay abajo a la derecha en la ventana central, si es posible, los contenidos del objeto seleccionado en la zona inferior.
La opcin Actualizar tablas se utiliza cuando hayamos efectuado cambios en el diseo de la misma (aadimos o borramos
campos, cambiamos una clave, etc.).
En el men Insertar podemos encontrar las opciones ms habituales para la creacin de los diversos tipos de objetos:
formularios, informes, consultas (en vista Diseo o en vista SQL1 ), tablas (en modo diseo) y definicin de vistas sobre las
mismas (ya veremos ms adelante en qu consisten las vistas).
Del men Herramientas destacamos la opcin Relaciones. . . , que debemos utilizar para establecer las relaciones (1:M
y M:M) entre las tablas de la base de datos. Hablaremos de esto en la Seccin 3, aunque tambin puedes consultar los
apuntes del Tema 1 de teora para saber de qu estamos hablando. Tambin tenemos una opcin que permite filtrar las
tablas para que podamos especificar aqullas que sern visibles para las diferentes aplicaciones de LO y otra que permite
ejecutar instrucciones sueltas en SQL. La opcin Personalizar. . . es anloga a la que podemos encontrar en el men Ver,
opcin Barras de herramientas, y permite cambiar las opciones de los mens y los iconos de la barra de herramientas.
Finalmente, la opcin Opciones. . . es comn a todas las aplicaciones de LO. Se utiliza para configurar tanto la suite
considerada globalmente como las diversas aplicaciones individuales (en particular, hay una entrada para configurar Base).
Los mens Ventana y Ayuda son los tpicos de todas las aplicaciones, y no slo ofimticas. El primero permite cerrar la
ventana para la base de datos actual y moverse entre todas las ventanas abiertas en LO (no slo en Base). El segundo muestra
las distintas opciones de ayuda de LO. De entre todas las opciones disponibles podemos destacar las dos que pasamos a
comentar. Por un lado, la opcin Ayuda de LibreOffice contiene una ayuda bastante extensa de todas las herramientas
proporcionadas por LO, clasificada por contenidos y con la posibilidad de efectuar bsquedas recorriendo el ndice de
contenidos o en funcin de palabras clave. Por otro lado, la opcin Qu es esto? muestra una pequea ventana emergente
de ayuda contextual que cambiar de contenido segn cul sea el objeto sobre el que tengamos situado el cursor del ratn.

2.

Creacin y edicin de tablas en la base de datos

Ya vimos en el Tema 1 de teora que una base de datos alberga informacin acerca de una serie de entidades que estn
relacionadas entre s. Cada entidad de la base de datos, que sirve para agrupar una coleccin de datos considerados como
un todo, se representa segn el modelo relacional como una tabla donde las filas representan los registros de informacin
y se corresponden con elementos (instancias) de la entidad cuya informacin se introduce en el sistema. Por otro lado, las
columnas representan los diferentes campos o tems de informacin (considerados aisladamente) que conforman la entidad.
En este sentido, las columnas representan atributos o caractersticas de la entidad.

Figura 4: Diseo de tablas en Base.

En nuestro ejemplo, tendramos que crear una tabla para almacenar informacin de las pelculas que tenemos en casa,
la cual constituir la entidad Pelculas en nuestra base de datos. Para cada pelcula almacenaremos su ttulo, nombre del
1 SQL

son las siglas de Structured Query Language, el lenguaje estndar para la interaccin con los SGBD relacionales. Consulta el cuaderno de teora
correspondiente al Tema 1 para conocer ms detalles al respecto.

-5-

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

director de la misma, su fecha de estreno en nuestro pas, el gnero,. . . . Cada uno de estos datos, considerado individualmente, constituye un atributo de la entidad Pelculas y, por tanto, ser una columna de la tabla (caracterstica comn a
todas las pelculas almacenadas en la base de datos). Por otro lado, tenemos una entidad Actores donde guardaremos
datos como el nombre de un actor, su fecha de nacimiento o su nacionalidad. la cual tiene propiedades distintas a la entidad
Pelculas. Por tanto, crearemos otra tabla en nuestro diseo de la base de datos para guardar la informacin propia de
los actores, ya que nunca se guardar informacin de entidades con propiedades distintas en una misma tabla. Es decir, no
podemos mezclar informacin en una nica tabla de las pelculas y de los actores porque los datos (los atributos de cada
una de las cosas sobre las que guardo informacin) no son los mismos.

Figura 5: Insertamos el primer campo de la tabla para las pelculas.

Para crear una tabla en Base seleccionamos el icono Tablas en la parte izquierda de la ventana central de gestin de Base
y, luego, pinchamos en la opcin Crear tabla en vista Diseo. . . tal como mostrbamos en la Figura 3. En ese momento
aparece una ventana similar a la que se muestra en la Figura 4, donde tendremos que definir los distintos campos (atributos
o columnas de la tabla) y especificar el dominio (consulta los apuntes de teora) en la columna Tipo del campo. La ltima
columna, Descripcin, permite que el diseador introduzca un comentario explicativo para describir, normalmente, el
tipo de dato que vamos a almacenar en ese campo (se tratara, en cierta forma, de la documentacin del diseo). Aunque
importante, ten en cuenta el carcter opcional de esta columna; el texto que escribes en ella se comporta como si fuesen los
comentarios de un programa en un lenguaje de programacin como Python.
La Figura 5 ilustra la creacin del primer campo de la tabla para las pelculas; se trata del campo denominado Id_Peli, de
tipo numrico (el dominio indica que slo podemos introducir valores que sean nmeros para este campo) y para el que se
ha introducido un comentario que describe lo que es.

2.1.

Nombre y tipo de los campos

Para definir la primera columna hay que situarse en la primera fila de la rejilla y en la columna Nombre del campo
escribimos el nombre que tendr el campo en la base de datos (Id_Peli en nuestro ejemplo). Para establecer el dominio
(Tipo del campo) basta con pinchar en la celda correspondiente y seleccionar el elemento deseado de la lista desplegable
que aparece en ese momento. Hay varios tipos para elegir, dependiendo del tipo de dato que queramos almacenar en ese
campo:
I Si lo que deseas es introducir informacin textual (como un nombre o el ttulo de una pelcula) es frecuente elegir los
valores Texto [VARCHAR] (se especifica la cantidad, hasta un mximo de 255 caracteres), Texto(fijo) [CHAR]
(igual que el anterior, pero con la diferencia de que el nmero de caracteres que indiquemos ser el que ocupe por
defecto, siendo rellenado, si es necesario, con espacios en blanco), Texto [VARCHAR_IGNORECASE] (como
Texto [VARCHAR], slo que no distingue entre maysculas y minsculas) o Nota [LONGVARCHAR] (para un
texto variable muy largo, hasta 2 GB, como la descripcin de un producto o la sinopsis de una pelcula).
I Cuando queremos introducir informacin de tipo numrico (la cantidad de unidades disponibles en la tienda de
un determinado producto, por ejemplo) es frecuente elegir Nmero [NUMERIC] (permite almacenar nmeros

-6-

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

especificando precisin y escala, por ejemplo numeric(7,6) ser un nmero que tiene un dgito antes del decimal
y 6 dgitos despus del decimal), Tiny Integer [TINYINT] (para valores en un rango numrico pequeo; enteros
entre 0 y 255 sin signo, o -128 y 127 con l, es decir que ocupa 1 byte), Small Integer [SMALLINT] (enteros
entre 0 y 65535 sin signo, o -32768 y 32767 con signo, es decir que ocupa 2 bytes), Integer [INTEGER] (ocupa 4
bytes y, por tanto, permite almacenar nmeros enteros grandes), BigInt [BIGINT] (ocupa 8 bytes, es decir que sirve
para almacenar nmeros muy grandes), o Float [FLOAT] (usa 4 bytes), Real [REAL] (usa 8 bytes) o Double
[DOUBLE] (igual que el anterior) si queremos usar nmeros con decimales (con valores de ms pequeos y con
menos decimales a ms grandes y con ms decimales respectivamente).
I Tambin cabe destacar el tipo Fecha [DATE] para introducir datos que se pueden interpretar como fechas, obviamente, o el tipo S/No [BOOLEAN] que permite introducir un dato que solamente puede tomar dos valores posibles
(en general, verdadero o falso). Los valores 1 y S se interpretan como verdadero, mientras que los valores 0
y No se interpretan como falso. En las consultas, se puede emplear cualquiera de estos valores, pero si se emplean
las palabras hay que recordar que S lleva tilde.

Figura 6: Definimos el primer campo de la tabla como clave primaria.

Si quieres tener ms informacin o no ests seguro del todo acerca del tipo que debes establecer para un campo determinado en el diseo de una tabla consulta con tu profesor de prcticas. Tambin tienes ms informacin en la pgina web que
citamos en la bibliografa (vale mucho la pena que le eches un vistazo). Para introducir un comentario descriptivo basta con
pinchar en la celda correspondiente y teclear lo que consideremos conveniente.

2.2.

Clave primaria

Como ya sabemos (vase el cuaderno de teora del Tema 1), en cada tabla hay que especificar cul es la clave primaria
que identifica de manera nica cada elemento en la base de datos. Esta clave puede estar formada por un nico campo (lo
habitual) o por una combinacin de ms de uno. Para definir la clave primaria, debemos seleccionar con el ratn el campo o
campos deseados (hay que pinchar en la celda que hay a la izquierda del nombre del campo, pinchar con el ratn al mismo
tiempo que pulsamos la tecla Ctrl para ampliar la seleccin) y, despus, hacer clic con el botn derecho del ratn en la
celda que hay por fuera, a la izquierda del nombre del campo (vale cualquiera si hemos seleccionado dos o ms campos).
Entonces seleccionamos la opcin Llave primaria del men contextual que emerge (vase la Figura 6).
En el caso de nuestra tabla de pelculas, no hay ningn campo, a priori, que podamos utilizar para diferenciar una pelcula
de otra, ya que, por ejemplo, podemos tener dos pelculas con el mismo ttulo o dos pelculas con el mismo director. Cuando
nos encontremos con esta situacin, se suele definir un campo de tipo numrico (como hacemos con Id_Peli) que har el
papel de clave primaria. Ya sabes, por tanto, que ese campo siempre tiene que tomar un valor para cada fila de la tabla y que
dicho valor no puede repetirse en ninguna fila. Esto no pasara si hablsemos de personas, ya que el campo DNI actuara
como clave primaria y no tendramos que definir un campo adrede para ello.
En la Figura 7 puedes apreciar el resultado tras definir como clave primaria el campo Id_Peli en nuestro ejemplo. Observa
que hay un pequeo icono con forma de llave a la izquierda del nombre del campo. Por otro lado, en la parte de abajo de

-7-

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 7: Tras definir el primer campo de la tabla como clave primaria, podemos apreciar cmo aparece un icono con forma de llave a la
izquierda del nombre del campo.

la ventana del diseo de la tabla aparece una descripcin del tipo de campo elegido. En este caso (tipo Nmero [NUMERIC]), podemos especificar el tamao en cifras (si se tratase de texto estaramos hablando del nmero de caracteres) y el
nmero de decimales (si ha lugar). Es importante que sepas que puedes especificar un valor determinado por omisin (si el
usuario de la base de datos no da un valor para el campo al introducir los datos de un elemento). Abajo, en la caja Ejemplo
de formato puedes ver cmo se mostraran los valores almacenados (en informes, formularios o consultas).

Figura 8: Terminamos de definir los campos de la tabla Pelculas.

Ahora, tendramos que ir introduciendo los sucesivos campos en filas consecutivas hasta completar el diseo de la tabla
(definir todos los campos y sus dominios), tal como muestra la Figura 8. Observa que tenemos campos de tipo texto para
almacenar el ttulo, el nombre del director el gnero, el formato y la sinopsis, campos de tipo numrico para almacenar
el identificador de la pelcula (clave primaria creada por nosotros), la calificacin y el identificador del estuche donde est
guardada, y campos de otros tipos (fecha y booleano) para guardar la fecha de estreno en Espaa y saber si la tenemos
prestada o no.

-8-

EI(MT)1002. Informtica Bsica - 1er curso.

2.3.

Material de apoyo. Bases de datos con LibreOffice Base

Guardar una tabla

Una vez creados todos los campos con sus propiedades, debemos
guardar la tabla. Para ello pulsamos sobre el icono en forma de disquete
de la esquina superior izquierda. A continuacin aparece un dilogo
que pide que introduzcamos el nombre de la tabla. En dicha ventana
introducimos el nombre Peliculas y pinchamos el botn Aceptar, tal
como se puede apreciar en la figura de la derecha. Tras guardar la tabla,
cerramos la ventana para el diseo de tablas. Si hemos seguido todos
los pasos correctamente, la tabla Peliculas debe aparecer en la lista Figura 9: Guardamos la tabla de las pelculas una vez
de objetos del tipo Tablas en la parte inferior de la ventana central de terminado su diseo.
gestin de Base, tal como ilustra la Figura 10.
Date cuenta de que no hemos empleado tildes ni caracteres propios del idioma, tales como ees, a la hora de poner
nombres a los campos o a la tabla. Esto es debido a que las tildes y otros caracteres propios del idioma pueden producir
problemas en Base, por lo que es mejor evitar su uso, sobre todo si queremos usar la base de datos en otros sistemas
operativos (Linux si estamos en Windows o viceversa). Recuerda que LO es multiplataforma. A qu crees que es debido
esto? Si has estudiado el Tema 3 de teora deberas tener una respuesta para esta pregunta, si no, mal vas.

Figura 10: Aspecto de la ventana central de gestin tras haber creado la tabla de pelculas.

Figura 11: Abrimos la tabla de pelculas para insertar datos.

-9-

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 12: Hemos insertado diez registros (pelculas) en la tabla.

2.4.

Gestionar registros

A continuacin, vamos a abordar el tema de la introduccin de datos en las tablas que vayamos creando. En este momento,
acabamos de crear la tabla para las pelculas. Nos disponemos, pues, a introducir algunos elementos en ella. Para ello, y
desde la ventana central de gestin (vase la Figura 10), haremos doble clic con el botn izquierdo del ratn sobre la
tabla Peliculas. Otra posibilidad consiste en acceder al men contextual, haciendo clic con el botn derecho del ratn, y
seleccionar la opcin Abrir. Observa que hay una opcin que se llama Editar que permite volver a la pantalla de diseo de
tablas para poder modificar la definicin de los campos de la tabla (o bien aadir o quitar campos).

Figura 13: No pueden existir valores repetidos para el campo Id_Peli porque se trata de una clave primaria.

A continuacin, emerge una ventana similar a la que se muestra en la Figura 11. Esta ventana muestra la hoja de datos
para la tabla. Observa que aparecen las diez columnas (campos) que definimos en el diseo de la tabla y ninguna fila
insertada (como es natural, pues acabamos de crear la tabla). Podemos ver tambin que el campo Prestada aparece con
un cuadrado. Este cuadrado indica que es un campo de tipo booleano y que aparezca con una rayita significa que no hay
ninguna opcin elegida por el momento. Tambin se puede ver que al principio de la fila aparece una pequea estrella
amarilla, dicha estrella seala el lugar donde est la nueva fila a insertar, en nuestro caso, la primera pelcula. Simplemente
hemos de hacer clic con el ratn en la celda correspondiente al campo que queramos editar y teclear el valor que deseemos
introducir. Hemos de proceder as, fila por fila, por cada nuevo registro (pelcula) cuyos datos queramos introducir en la
tabla.
Tras introducir diez registros (pelculas) con todos los campos rellenos, tendremos una situacin parecida a la que ilustra
la Figura 12. Conviene que vayamos guardando los datos introducidos cada cierto tiempo (y para eso est el icono con
forma de disquete que hay en la esquina superior izquierda). Queremos resaltar la importancia de la definicin de las claves
primarias en las tablas que creemos, ya que, al hacerlo, indicamos a Base que tome medidas para preservar la integridad de
las mismas. Por ejemplo, observa atentamente la situacin descrita en la Figura 13 al intentar introducir una nueva pelcula
en la tabla que tiene el mismo identificador que otra ya existente. Base no nos deja introducir ese dato y muestra, en una
ventana emergente, un mensaje de error2 .
A travs de las opciones del men Editar podemos borrar registros (previamente hacemos clic en la celda que hay a su
izquierda para seleccionarlos, combinando con el uso de la tecla Ctrl para ampliar la seleccin) o bien modificar sus datos.
Tambin podemos modificar los datos pinchando en la celda que los contiene y reescribiendo a nuestra voluntad. En la parte
inferior de la ventana se puede apreciar la barra de navegacin entre registros (vase la Figura 12). En esta barra se indica,
en la parte izquierda, la fila en la que estamos sobre el total de filas existentes, as como los botones, por este orden, para ir
a la primera fila, a la anterior, a la siguiente, a la ltima o crear una nueva.
Tambin tenemos una serie de iconos de la barra de herramientas, destacados en el recuadro rojo que hay ms a la
2 Como

en otras circunstancias, se trata de un mensaje ciertamente crptico. En general, ante mejorables mensajes de un sistema informtico, es nuestra
experiencia como usuarios y nuestros conocimientos lo que nos ayuda a su correcta comprensin y diagnstico.

- 10 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 14: Aspectos finales de las tablas de estuches, actores y pelculas, respectivamente, tras introducir todos los datos disponibles.

izquierda en la Figura 12, que permiten ordenar los registros por orden ascendente o descendente segn los valores del
campo que hayamos seleccionado (haciendo clic con el botn izquierdo del ratn encima del nombre del campo). El primero
de ellos (el de ms a la izquierda) permite especificar criterios de ordenacin ms elaborados que impliquen a ms de un
campo.
Los iconos que hay en el recuadro rojo que aparece ms a la derecha en la Figura 12 permiten especificar las opciones de
filtrado de datos, las cuales nos permiten elegir de forma simple qu datos queremos que se muestren. Las cuatro opciones,
por el orden en que aparecen los botones, son:
I Filtrado automtico. Filtra las filas segn el contenido del campo seleccionado.
I Usar o no el filtro, es decir, conmuta entre las vistas con y sin filtro.
I Filtro predeterminado, que permite establecer las opciones del filtro de forma parecida a como establecamos los
criterios de ordenacin, teniendo en cuenta los valores que especifiquemos para varios campos.
I Cancelar filtro, de manera que se muestran todos los registros de la tabla nuevamente.
Tras terminar el proceso de creacin de tablas y edicin de datos con la base de datos de nuestro ejemplo, tendremos tres
tablas (pelculas, estuches y actores) cuyos contenidos se muestran en la Figura 14. No obstante, no quisiramos terminar sin
apuntar que existe otra forma de introducir datos, ms adecuada para usuarios finales de la base de datos (no informticos).
Esta manera alternativa consiste en usar un formulario, que previamente hay que definir. Lo veremos en la Seccin 6.

- 11 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 15: Base proporciona una herramienta para definir las relaciones entre tablas.

3.
3.1.

Relaciones entre tablas


Relacin uno a muchos (1:M)

Una de las cosas ms importantes en el modelo relacional de bases de datos es la correcta definicin de las relaciones
entre las entidades (tablas) que la conforman. Un buen diseo de la base de datos requiere que se establezcan adecuadamente
estas relaciones. Si nos fijamos en nuestro ejemplo de las pelculas que se guardan en estuches, tenemos una relacin de
tipo 1:M (uno a muchos) entre los estuches y las pelculas, ya que un estuche permite guardar muchas pelculas (segn
su capacidad), pero una pelcula concreta slo puede estar almacenada en un estuche.
Para poder establecer relaciones, en este caso la relacin 1:M entre estuches y pelculas, Base proporciona una herramienta que permite definirlas con gran precisin. Esa herramienta la proporciona la ventana Diseo de relacin, a la que
se llega seleccionando la opcin Relaciones. . . del men Herramientas, tal como indica la Figura 15. Es necesario que
definamos las relaciones con esta herramienta, porque si no Base no tiene forma de saber qu relaciones existen entre las
tablas definidas, ni cules son los campos implicados en ellas. Se pueden producir errores en el acceso a la informacin
o, lo que es peor, mostrar al usuario de la base de datos informacin duplicada o incorrecta si no definimos las relaciones
existentes a travs de esta herramienta.
Una vez hemos abierto la ventana Diseo de relacin, lo primero que tenemos que hacer es agregar las tablas con las
que deseamos trabajar, es decir, las tablas correspondientes a las entidades que estn relacionadas. En nuestro ejemplo, estas
tablas son Estuches y Peliculas. Para agregar las tablas basta con pinchar en el icono correspondiente (resaltado con un
crculo rojo en la imagen de arriba de la Figura 16) y seleccionar las tablas de la ventana que aparece, tal como ilustra la
imagen de la parte superior de la Figura 16. Cada vez que seleccionemos una tabla que deseemos agregar, hemos de pinchar
en el botn Aadir, tambin resaltado en dicha imagen. Cuando hayamos terminado de aadir las tablas mencionadas
anteriormente, pulsamos el botn Cerrar para cerrar la ventana emergente con la lista de tablas. En ese momento, podemos
apreciar que el aspecto de la ventana Diseo de relacin es el que muestra la imagen en la parte inferior de la Figura 16.
Como hemos visto ya, la relacin entre estuches y pelculas es una relacin 1:M, puesto que se pueden guardar varias
pelculas en un nico estuche, pero una pelcula no puede estar en varios estuches a la vez. En otras palabras, es la tabla
Peliculas la que hace el papel de muchos en esta relacin. Por tanto, para establecer esta relacin, necesitamos que el
campo que acta como clave primaria en la tabla Estuches conste tambin como clave externa3 en la tabla Peliculas. Este
campo que acta como clave externa en Peliculas, Id_Estuche, ya lo tuvimos en cuenta al disear la tabla Peliculas
(vase la Figura 8).
Para definir la relacin entre las tablas agregadas, es decir, indicar los campos de ambas tablas a travs de los cuales se
establece la relacin, pinchamos en el botn correspondiente de la barra de herramientas, que es el que est enmarcado
con un rectngulo rojo en la imagen inferior de la Figura 16. En ese momento, definimos la relacin que se establece
3 Recuerda

que en el Tema 1 de teora ya se defini este concepto.

- 12 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 16: Diseo de una relacin 1:M: aadiendo las tablas a la relacin.

(a) Indicamos los campos de ambas tablas que estn relacionados.

(b) El correspondiente a Estuches es clave primaria (es la parte


uno en la relacin).

Figura 17: Diseo de una relacin 1:M.

- 13 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

conectando (o ligando) los valores de los campos Id_Estuche de ambas tablas en la ventana que ilustra la Figura 17(a).
Ojo! no es necesario que ambos campos tengan el mismo nombre en ambas tablas (podran ser distintos), pero lo hemos
hecho as en nuestro ejemplo para resaltar la relacin existente.
A la hora de establecer las opciones, fjate en los valores seleccionados para Tablas implicadas, Campos implicados,
Opciones de actualizacin y Opciones de eliminacin en la Figura 17(a). Si quieres conocer ms cosas al respecto
del significado de las diversas opciones de actualizacin y eliminacin, consulta la bibliografa. Tras hacer clic en el botn
Aceptar, volvemos a la ventana principal del diseo de relacin, donde podemos observar el aspecto que se muestra en
la Figura 17(b). Se han resaltado los botones Deshacer, que permite deshacer la ltima relacin que hemos creado, y
Guardar, que es el que hemos de pinchar para guardar los cambios efectuados en la base de datos (en este caso, aadir una
nueva relacin), de la barra de herramientas.

3.2.

Relacin muchos a muchos (M:M)

Figura 18: La relacin M:M necesita de una tabla interpuesta. Aprovechamos para guardar informacin asociada a la relacin que pueda
interesarnos.

Otro tipo de relacin que admite el modelo relacional es la relacin muchos a muchos, conocida como M:M. En nuestro
ejemplo, tenemos una tabla que guarda informacin de los actores que intervienen en las pelculas que tenemos en nuestra
casa. Pensemos en la relacin que se establece, precisamente, entre los actores y las pelculas. Por un lado, tenemos que
un actor concreto ha podido participar en varias de las pelculas que tenemos (como es el caso de Ethan Hawke). Por otro,

- 14 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

sabemos que en una pelcula determinada participan varios actores (como es el caso de Training Day, en la que participan
Ethan Hawke y Denzel Washington).
Es decir, que por un lado tenemos una relacin 1:M entre actores y pelculas y, por otro, una relacin 1:M entre pelculas
y actores. Este tipo de relacin se denomina muchos a muchos (M:M). Para representar una relacin de este tipo no
podemos replicar los campos clave de ambas tablas en la otra, como claves externas, ya que implicara una gran redundancia
de informacin (consulta los apuntes de teora del Tema 1). Para poder definir esta relacin en el modelo relacional, es
necesario crear una nueva tabla que servir para emparejar los datos que relacionan un determinado actor con una pelcula
concreta, tal como ilustran las imgenes de la Figura 18.
En la imagen de arriba, podemos apreciar que, en la definicin de la tabla, deben estar presentes los campos que actan
como claves primarias en las tablas Peliculas (Id_Peli) y Actores (Id_Actor). Adems, podemos ver que se han seleccionado ambos campos y se ha establecido la combinacin de los dos como clave primaria de la nueva tabla, a la que hemos
denominado Papeles (observa atentamente el recuadro rojo).

Figura 19: Diseo de una relacin M:M: Aadimos la nueva tabla interpuesta para poder crear las relaciones.

Si no tenemos ningn requisito de informacin particular podramos dejar esta nueva tabla tal como est (slo con esos
dos campos actuando como clave primaria). Con esto nos bastara para sacar listados que relacionasen actores con pelculas
dame las pelculas en las que ha intervenido el actor X o viceversa dame los actores que han protagonizado la pelcula
Y. Pero imagnate que estuvisemos interesados, por ejemplo, en conocer qu personaje ha interpretado un determinado
actor en una pelcula concreta. Este tipo de informacin est asociada con la relacin y, si tenemos ese requisito (nos lo pide
el cliente), podemos aprovechar la nueva tabla creada para guardar, igualmente, este dato. En la Figura 18 puedes apreciar
que hemos aprovechado la tabla Papeles, creada para representar la relacin M:M entre actores y pelculas, para guardar
este dato, junto con la valoracin que hace un crtico de cine de dicha interpretacin.
Ahora ya podemos dedicarnos a definir la relacin M:M de manera explcita en Base. En la ventana Diseo de relacin
(ya hemos explicado antes cmo llegar a ella) vamos a agregar las tablas Papeles y Actores. Observa atentamente el
proceso en la Figura 19 (slo con la tabla Papeles). Procederamos de la misma manera para aadir la tabla Actores.
Ahora, lo nico que resta por hacer es aadir las relaciones 1:M en ambos sentidos: de Peliculas con Papeles, a travs
de los campos Id_Peli de ambas tablas, y de Actores con Papeles, a travs de los campos Id_Actor de ambas tablas, tal
como describe la secuencia de imgenes de la Figura 20. De esta manera, conseguimos una relacin M:M de manera
indirecta a travs de la tabla Papeles y las relaciones 1:M definidas entre Peliculas y Actores. Observa atentamente las
opciones elegidas en las ventanas que permiten configurar ambas relaciones y no olvides pinchar el icono Guardar de la
barra de herramientas para guardar todos los cambios efectuados en la base de datos.

4.

Diseo de consultas

El valor de una base de datos viene dado por la informacin que podemos extraer de ella y la rapidez con que lo hagamos.
Si hacemos un buen diseo del modelo de informacin subyacente, tenemos muchas posibilidades de satisfacer el objetivo
de la velocidad. En lo que resta de documento vamos a intentar mostrar cmo lograr el primer objetivo: extraer informacin
de la base de datos. Para ello, resulta bsica la herramienta de consultas que proporciona Base.
A la hora de extraer informacin, tambin resulta importante la herramienta de generacin de vistas, que introduciremos
en la Seccin 5. Para crear una consulta, Base proporciona tres posibilidades desde la ventana central de gestin de la base

- 15 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 20: Procedemos a crear las nuevas relaciones que definirn la relacin M:M entre los actores y las pelculas que protagonizan.

de datos, tal como se puede apreciar en la Figura 21.

- 16 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 21: Creamos una consulta en vista Diseo.

4.1.

Vista diseo

En primer lugar, vamos a crear una consulta empleando la denominada vista Diseo (vase la Figura 21). Cuando pinchamos en esta opcin, Base muestra la ventana de diseo de la bsqueda que se muestra en la serie de imgenes de la
Figura 22. Ahora, nuestro objetivo es crear una consulta que muestre todas las pelculas protagonizadas por Ethan Hawke
y que estn guardadas en el estuche 1. Para cada pelcula queremos mostrar su ttulo, nombre del director, calificacin,
gnero, sinopsis, el personaje que en ella interpreta Ethan Hawke, la valoracin crtica de su interpretacin y la localizacin
del estuche donde est guardada (es decir, la localizacin del estuche 1, pues por el criterio de la consulta todas las pelculas
estn almacenadas en ese estuche).
Tal como se ilustra en la imagen de la Figura 22(a), lo primero que hay que hacer es aadir las tablas implicadas en
la consulta. Para ello, hay que pinchar en el botn enmarcado en rojo de la barra de herramientas. Entonces, aparece la
ventana emergente Agregar tabla o consulta. En dicha ventana hemos de pinchar en la tabla que deseemos aadir y,
luego, pinchar el botn Aadir. Esto lo hacemos con las tablas Estuches y Papeles en nuestro ejemplo, pues son las
dos que contienen los campos que queremos mostrar o usar para definir posteriormente los criterios de bsqueda (vase la
imagen de la Figura 22(b)). Obviamente, tambin hemos de aadir la tabla Peliculas. Una vez hemos terminado de aadir
las tablas necesarias pinchamos en el botn Cerrar de la ventana Agregar tabla o consulta.
En este momento, tenemos la situacin que se ilustra en la imagen de la Figura 22(c). En la parte de arriba de la ventana
de diseo tenemos las tres tablas implicadas en la consulta, mientras que en la parte de abajo tenemos que comenzar a
definirla. En primer lugar, tal como ilustra el crculo rojo de la imagen, hay que indicar cules son los campos implicados
en la consulta, bien porque queremos mostrar los valores que almacenan, bien porque participan en la definicin de los
criterios de bsqueda. Para ello simplemente hemos de pinchar en la lista desplegable y seleccionar el que nos interese.
Despus, pasamos a la siguiente columna y seguimos el mismo procedimiento hasta que acabemos de seleccionar todos los
campos implicados.
Al mismo tiempo que vamos seleccionando los campos, podemos aprovechar para marcar la casilla de la fila Visible si
se trata de campos cuyos valores se van a mostrar al ejecutar la consulta, tal como ilustra la imagen de la Figura 22(d). La
imagen de arriba de la Figura 23 muestra la situacin tras haber seleccionado todos los campos que van a mostrar sus datos
en la consulta.
Debes tener en cuenta que, cuando se muestre la ventana con los datos resultantes al ejecutar la consulta, en su cabecera
aparecern, por defecto, los nombres de los campos correspondientes tal cual se han definido en las tablas de la base de
datos. Esto se puede cambiar para que en dicha cabecera aparezcan unos ttulos ms clarificadores acerca de los datos que
se estn mostrando. Esto es lo que Base conoce como asignacin de alias.
Precisamente ahora, podemos aprovechar para definir los alias (si ha lugar) en la fila correspondiente, tal como se muestra
en la imagen de abajo de la Figura 23. En este caso, cambiamos los nombres de los campos son los valores por defecto
para los rtulos Personaje, Valoracion y Localizacion por Interpreta a:, Su actuacin merece: y Est en:,

- 17 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 22: Proceso de creacin de una consulta que permite mostrar el ttulo, nombre del director, calificacin, gnero, sinopsis, personaje
interpretado por el actor, calificacin de su actuacin y localizacin del estuche en que est guardada, de todas las pelculas protagonizadas
por Ethan Hawke que estn almacenadas en el estuche 1.

respectivamente.
Tan slo resta por definir los criterios de bsqueda. Para ello, emplearemos la fila Criterio en la parte de abajo, tal como
ilustra la imagen de arriba de la Figura 24. Pero antes tendremos que aadir los dos campos implicados en la bsqueda no
se haban aadido anteriormente que son Id_Actor de la tabla Papeles e Id_Estuche de la tabla Estuches. Fjate que no
hemos marcado sus casillas en la fila Visible, ya que no vamos a mostrar los valores de estos campos en la consulta, pues
slo se van a usar para especificar los criterios de bsqueda: slo mostraremos las pelculas almacenadas en el estuche 1
(condicin Id_Estuche igual a 1) protagonizadas por el actor Ethan Hawke (condicin Id_Actor igual a 1, que es la clave
correspondiente a Ethan Hawke). Finalmente, guardaremos la consulta con el nombre que deseemos (pinchando en el botn
con forma de disquete en la barra de herramientas) y volveremos a la ventana central de gestin de Base, donde aparecer
en la lista de consultas creadas.
Si ejecutamos la consulta (haciendo doble clic sobre su nombre), obtendremos el resultado que se muestra en la imagen
de abajo de la Figura 24 (observa los rtulos enmarcados en rojo para ilustrar el uso de los alias). Date cuenta de que esta
consulta funcionar gracias a que previamente definimos las relaciones entre las tablas Papeles y Peliculas por un lado, y
Peliculas y Estuches por el otro en la Seccin 3. De esta manera, Base puede usar estas relaciones para filtrar los datos
convenientemente y evitar duplicados.
As, por ejemplo, slo se mostrarn una sola vez los registros en los que coincida el valor del campo Id_Peli tanto en

- 18 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 23: Arriba: terminamos de seleccionar los campos que deseamos mostrar en la consulta. Abajo: definimos alias (nombres que
aparecern en la cabecera de la tabla) para ciertos campos.

la tabla Peliculas como en la tabla Papeles, que a su vez vendrn determinados por el valor del campo Id_Actor (slo
los que tengan el valor 1 para este campo). Esto mismo ocurrir si tenemos en cuenta la relacin 1:M entre estuches y
pelculas establecida a travs del campo Id_Estuche. Observa (mira nuevamente la imagen de arriba de la Figura 24) que
tambin aprovechamos para definir los criterios de ordenacin de los registros resultantes en la fila Orden (de mayor a
menor calificacin en nuestro caso).
Para finalizar esta seccin, queremos mostrarte otra forma alternativa, tal vez ms adecuada desde el punto de vista de un

- 19 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 24: Arriba: finalmente, especificamos el criterio de bsqueda (observa los campos implicados y los valores buscados). Abajo:
resultado de ejecutar la consulta definida (fjate en que las cabeceras dentro del rectngulo rojo son los alias definidos para esos campos).

Figura 25: Otra forma alternativa de definir la ltima consulta efectuada. Observa que hay ms tablas implicadas en la consulta (la de
Actores).

- 20 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

usuario final, de realizar esta ltima consulta. Esta forma alternativa se ilustra en la Figura 25. En este caso empleamos el
nombre del actor Ethan Hawke en lugar de la clave que lo identifica (1) a travs del campo Nombre de la tabla Actores
a la hora de definir uno de los dos criterios de bsqueda (el otro criterio, que implica al estuche, se deja igual que antes).
Fjate que, en este caso, hay cuatro tablas implicadas en la creacin de la consulta en lugar de tres (hemos de aadir
la tabla Actores pues es la nica en la que aparece el campo Nombre del actor). Tambin se ha modificado la condicin
referente al actor en el criterio de bsqueda, como hemos comentado antes, en la fila Criterio. Dejamos al lector que saque
sus propias conclusiones al respecto.
Hemos de apuntar que esta definicin alternativa puede resultar en la prctica4 menos eficiente que la original, ya que
necesita acceder a ms tablas para obtener los datos. No obstante, un informtico siempre puede recurrir al truco de lanzar
una primera consulta que devuelva la clave a partir del nombre del actor y, posteriormente, ya conociendo el valor de la
clave, ejecutar la primera versin de la consulta (la que empleaba dicha clave como criterio de bsqueda) para mostrar los
datos solicitados de forma totalmente transparente al usuario final, ignorante del nmero y tipo de consultas efectuadas.

Figura 26: Creamos una consulta con el asistente que proporciona Base.

4.2.

Asistente

Otra posibilidad que nos ofrece Base para crear una consulta es el asistente hay que pinchar en la opcin marcada con
el recuadro rojo en la Figura 26. Nuestro objetivo es crear una consulta que proporcione el nombre, fecha de nacimiento y
nacionalidad de todos los actores de la base de datos que han nacido en Reino Unido.
El proceso completo se describe de forma grfica en la serie de imgenes que se muestran en la Figura 27. En el primer
paso, hemos de seleccionar los campos implicados en la consulta, bien porque sean campos cuyos datos queremos mostrar
por pantalla, bien porque sean campos que vamos a utilizar en la definicin posterior de los criterios de bsqueda de la
consulta. Para ello, tendremos que ir seleccionando las tablas correspondientes, para que sus campos aparezcan en la lista
que se muestra en el cuadro de abajo (fjate en las Figuras 27(a) y (b)).
Para aadir todos los campos a la lista de Campos de la consulta que aparece en el cuadro de la derecha, habra
que pinchar el botn . Teniendo en cuenta la consulta que queremos realizar, slo nos interesan los campos Nombre,
Nacimiento y Nacionalidad de la tabla Actores. Por tanto, una vez seleccionados en el cuadro de la izquierda (podemos
seleccionarlos todos o bien proceder uno por uno) los aadimos al cuadro de la derecha pinchando el botn >, tal como
ilustra la Figura 27(c). A continuacin, pinchamos el botn Siguiente y pasamos a la siguiente ventana (la que muestra la
Figura 27(d)).
Tras seleccionar los campos, pasamos a definir el orden por el que queremos clasificar los datos que se mostrarn al
ejecutar la consulta. En nuestro ejemplo, queremos ordenar la lista de actores por fecha de nacimiento (de ms antiguo
a ms reciente) en primer lugar. Como segundo criterio de ordenacin (suponiendo que hubiese dos actores britnicos
4 Sobre

todo si consideramos una situacin real en una base de datos con miles de registros.

- 21 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 27: Proceso de creacin de una consulta que permite mostrar el nombre, la fecha de nacimiento y la nacionalidad de todos los
actores de la base de datos que han nacido en Reino Unido empleando el asistente de Base.

que hubiesen nacido en la misma fecha) lo haremos por el nombre en orden alfabtico (fjate bien en la imagen de la
Figura 27(d)). Nuevamente pinchamos en el botn Siguiente para avanzar al siguiente paso. Observa que, si te equivocas
en algn momento, siempre puedes retroceder al paso anterior pinchando en el botn Regresar.
En este paso, la ventana del asistente pide que introduzcamos el criterio para realizar la bsqueda, es decir, hay que
especificar las condiciones que queremos que cumplan los registros de la base de datos para ser mostrados al ejecutar la
consulta, tal como ilustra la imagen de la Figura 27(e). En la parte de arriba de esta ventana hemos de decidir si queremos que
la bsqueda satisfaga todas las condiciones que se detallan abajo (lo que sera una condicin lgica AND) o bien solamente
una cualquiera de ellas (lo que sera una condicin lgica OR). En la parte de abajo hemos de seleccionar tanto los campos
que determinan las condiciones de la bsqueda, como detallar cules son stas. En nuestro ejemplo, solamente hay una
condicin que debe satisfacerse: buscamos actores britnicos, es decir, aquellos registros que hay en la tabla Actores de la

- 22 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

base de datos cuyo valor para el campo Nacionalidad es igual a Reino Unido. Fjate en la imagen de la Figura 27(e) y
vers que ste es el criterio que hemos especificado. Despus, pinchamos el botn Siguiente y pasamos al siguiente paso,
ilustrado en la imagen que hay a su derecha.
Podemos apreciar en la imagen de la Figura 27(f) que ahora toca seleccionar el tipo de consulta que deseamos realizar.
Nosotros seleccionaremos la opcin Consulta detallada, ya que deseamos mostrar todos los registros que satisfagan las
condiciones de bsqueda de la consulta. La Consulta resumida implica usar lo que Base denomina funciones agregadas,
que, de momento, no vamos a ver. El lector interesado debe remitirse a la bibliografa proporcionada para conocer ms
detalles al respecto. Tras pulsar el botn Siguiente pasamos a la ventana que se muestra en la Figura 27(g).
El penltimo paso consiste en ponerle un poco de maquillaje al listado resultante de la consulta definiendo los alias
para los campos de las tablas implicadas. Recuerda de cuando definimos la primera consulta empleando la vista diseo
que los alias se limitan a cambiar los rtulos que aparecern en la cabecera del listado con los registros que cumplen con
los criterios de bsqueda al ejecutar la consulta.
As, por ejemplo, queremos que en lugar de Nacimiento aparezca el rtulo Fecha de nacimiento en la columna
correspondiente a dicho dato (no cambiaremos el rtulo para los otros campos). Despus de definir los alias que se deseen,
pinchamos nuevamente en el botn Siguiente y pasamos al ltimo paso.
El ltimo paso realmente no es tal. Se trata simplemente de una ventana que muestra un resumen con la informacin que
hemos ido introduciendo en las ventanas anteriores. sta es la ltima oportunidad que tenemos para volver atrs y rectificar
los errores que pudisemos haber cometido antes de guardar la consulta. Tan slo queremos que observes con detenimiento
dos cosas de la Figura 27(h).

Figura 28: Resultado de ejecutar la consulta Actores_por_Nacionalidad (haciendo doble clic con el botn izquierdo del ratn sobre su
nombre).

En primer lugar, fjate en la caja Nombre de la consulta. Por defecto, Base sugiere un nombre por defecto a la hora de
guardarla. Lo normal es que lo cambies por otro que te resulte ms adecuado (observa que nosotros lo hemos cambiado por
el nombre Actores_por_Nacionalidad). En segundo lugar, tenemos que decidir cmo deseamos continuar una vez se haya
creado la consulta al pinchar el botn Finalizar.
Si elegimos la opcin Mostrar consulta, Base cerrar la ventana al pinchar el botn Finalizar y la ejecutar mostrndose
los resultados (registros que concuerdan con el criterio de bsqueda) en una nueva ventana, tal como ilustra la Figura 28.
Por el contrario, si seleccionamos la opcin Modificar consulta, Base la crear y la abrir en la ventana de diseo de
bsqueda, la cual ofrece mayores posibilidades que el asistente (vase la Figura 30). Esta ventana tambin la podemos abrir
desde la ventana central de gestin, como hemos visto en la seccin anterior.
En cualquier caso, despus de crear la consulta, sta aparecer en la lista de objetos correspondientes a Consultas en la
ventana central de gestin de Base, tal como puede apreciarse en la Figura 29. Si hacemos clic con el botn derecho del
ratn sobre el nombre de una consulta podremos acceder al men contextual que tiene, entre otras, las opciones Eliminar
y Editar. La primera permite borrar una consulta creada, tras confirmar la accin en la posterior ventana emergente que lo
solicita. La segunda permite modificar las caractersticas de la consulta (editarla) desde la ventana de diseo de bsqueda,
tal como se ilustra en la Figura 30.
En la seccin anterior ya vimos cmo crear una consulta desde la vista diseo. Aunque queremos que sea el lector el que
saque sus propias conclusiones, pensamos que la vista diseo ofrece mayor flexibilidad y comodidad a la hora de configurar
las diferentes opciones (campos visibles, alias, definicin de criterios de bsqueda,. . . ).

4.3.

Vista SQL

Por ltimo, vamos a ver la ltima posibilidad que ofrece Base para crear una consulta: se trata de la vista SQL (vase la
Figura 31). SQL son las siglas de Structured Query Language (lenguaje estructurado de consultas), el cual constituye un
lenguaje estndar implementado por los principales sistemas de gestin de bases de datos relacionales (consulta los apuntes
de teora del Tema 1).

- 23 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 29: Aspecto de la ventana central de Base tras haber creado la consulta Actores_por_Nacionalidad.

Figura 30: Abrimos la consulta que acabamos de crear en vista Diseo.

La vista SQL constituye una manera avanzada de crear las consultas, slo apta para el profesional informtico que tiene
conocimientos de este lenguaje. Realmente, SQL es el lenguaje que utilizan los SGBD para acceder a la informacin, y
Base no es una excepcin a este respecto. En realidad, Base genera la instruccin SQL correspondiente a la consulta que
hemos diseado, siendo realmente dicha instruccin la que se emplea para el acceso a los datos. Vosotros no vais a usar esta
vista para crear las consultas, pero pretendemos que os familiaricis un poco con este lenguaje y, por eso, en el boletn habr
algn ejercicio en que se os pedir que le echis un vistazo a la instruccin SQL generada por Base al crear la consulta.
La Figura 32 ilustra el proceso de creacin de la consulta que permite mostrar el ttulo, nombre del director, gnero,

- 24 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 31: Creamos una consulta en vista SQL.

Figura 32: Creamos una consulta en vista SQL (continuacin).

calificacin, fecha de estreno en nuestro pas y localizacin del estuche donde est guardada, de todas las pelculas que
estn almacenadas en el estuche 2, ordenadas por calificacin (de menor a mayor) y por orden alfabtico del ttulo (como
segundo criterio de ordenacin).
En primer lugar, tenemos en la parte superior de la Figura 32 la ventana de diseo de bsqueda que aparece cuando
creamos la consulta en vista SQL. Esta ventana es, bsicamente, una ventana de edicin, preparada para que el diseador
escriba la instruccin SQL que desea ejecutar. Para nuestro ejemplo, sta se muestra en la ventana de abajo (vase la
Figura 32). Observa que las palabras clave del lenguaje SELECT, AS, FROM, WHERE, AND, ORDER BY,. . . estn

- 25 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 33: Aspecto de la ventana central de Base tras haber creado la consulta Ejemplo_Consulta_SQL_1.

marcadas en color azul. Por nuestra parte, poco ms tenemos que aadir, ya que aprender SQL queda un poco lejos de
nuestros propsitos (aunque s que pretendemos que conozcas lo que es y para lo que sirve).

Figura 34: Resultado de ejecutar la consulta Ejemplo_Consulta_SQL_1 (haciendo doble clic con el botn izquierdo del ratn sobre su
nombre).

Una vez hemos terminado de escribir la instruccin SQL, hemos de pinchar el icono con forma de disquete (est enmarcado dentro de un recuadro rojo en la imagen de la segunda fila de la Figura 32) para guardarla. Entonces, aparece el
cuadro de dilogo que se muestra en la parte inferior de dicha figura pidiendo que introduzcamos un nombre para guardar
la consulta. Una vez escrito el nombre, pinchamos el botn Aceptar y volvemos a la ventana central de gestin, que ahora
incluye la consulta recin creada (observa la Figura 33). Si hacemos doble clic sobre el nombre de la consulta, sta se
ejecutar y mostrar el resultado que podemos apreciar en la Figura 34.

5.

Generacin y uso de vistas

En la jerga de las bases de datos, las vistas consisten en la definicin de una tabla a partir del resultado de la ejecucin
de una consulta. Fjate que, de hecho, el resultado de ejecutar una consulta se devuelve en forma de tabla (observa, por
ejemplo, las Figuras 24 abajo 34 y 28). Date cuenta, igualmente, de que aunque la consulta puede incluir varias tablas, el
resultado siempre ser una nica tabla. De ah la potencia que proporciona la definicin de vistas en los SGBD. A las vistas
se les considera, en cierta forma, como tablas virtuales.
Las vistas, por consiguiente, tienen la misma estructura que una tabla clsica: filas y columnas. La nica diferencia es
que slo se almacena de ellas la definicin, no los datos. Los datos que se recuperan mediante una consulta a una vista se
presentarn igual que los de una tabla. De hecho, si no se sabe que se est trabajando con una vista, nada hace suponer que es
as. Al igual que sucede con una tabla, se pueden insertar, actualizar, borrar y seleccionar datos en una vista. Aunque siempre

- 26 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 35: Arriba: definicin de la consulta (vista Diseo) que devuelve todas las pelculas del gnero dramtico. Abajo: resultado de
ejecutar esta consulta. Fjate en que el resultado es, tambin, una tabla.

es posible seleccionar datos de una vista, en algunos SGBD existen restricciones para realizar el resto de las operaciones
sobre vistas bajo ciertas condiciones.
Las vistas se tratan, pues, como una tabla ms al nivel del gestor de base de datos. Pero, para qu sirven? Hasta ahora
hemos visto que slo podemos realizar consultas sobre las tablas previamente definidas, pero qu ocurre si necesitamos
realizar una consulta, no sobre una tabla, sino sobre los resultados de otra consulta? Pues para esto sirve la definicin de
vistas: debemos convertir, previamente, la consulta primera en una vista para que, al tratarla el sistema como una tabla,
pueda, posteriormente, ejecutar la segunda consulta sobre ella. Parece un trabalenguas, pero es bastante sencillo.
Veamos un ejemplo. Imagina que queremos obtener la calificacin media de todas las pelculas que son dramas (es decir,
cuyo gnero es Drama). No podemos realizar esta consulta directamente sobre la tabla Peliculas, ya que no podemos
agrupar unos datos que todava no existen (se generan en la propia consulta) para calcular un promedio. Animamos al lector
a que lo intente si no entiende lo que acabamos de decir. En su lugar, haremos esta consulta sobre el resultado de otra que
devuelva una tabla con todas las pelculas del gnero dramtico, previamente convertida en vista. De esta manera, al tener
existencia ya en una tabla, podremos agruparlas para calcular su promedio.
La imagen en la parte superior de la Figura 35 muestra el diseo de una consulta que muestra el ttulo, el nombre del
director, la calificacin y el gnero de todas las pelculas cuyo gnero es Drama, ordenadas de mayor a menor calificacin
y, como criterio secundario, por el ttulo en orden alfabtico. Precisamente, la imagen de abajo de dicha figura muestra el
resultado de ejecutar dicha consulta. Puedes apreciar que, realmente, el resultado de ejecutar la consulta es una nueva tabla.
Para poder conseguir nuestro objetivo calcular la calificacin promedio de las pelculas dramticas que hay en nuestra

- 27 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 36: Desde la ventana central de gestin de Base creamos una vista de la consulta recin creada.

Figura 37: Aspecto de la ventana central de gestin de Base tras crear una vista para la consulta diseada en nuestro ejemplo. Observa
que el icono para esta tabla virtual es distinto al de las tablas previamente creadas.

base de datos tenemos que generar una vista que Base tratar como una tabla ms a partir de esta consulta. La Figura 36
ilustra el proceso: desde la ventana central de gestin, una vez creada la consulta, procedemos a pinchar con el botn
derecho del ratn sobre su nombre en la lista de objetos del tipo Consultas y seleccionamos la opcin Crear como vista
del men contextual emergente.
En ese momento, Base mostrar un dilogo donde nos pide que le demos un nombre a la vista (tabla) que vamos a crear.
Rellenamos el dato (en nuestro caso le hemos dado el nombre Tabla_Consulta_Dramas) y pinchamos en Aceptar. Si
ahora pinchamos en el icono correspondiente a los objetos de tipo tabla en la zona izquierda, la ventana central de gestin
de Base tendr el aspecto que muestra la Figura 37. Podemos apreciar que el icono que Base asigna a esta nueva tabla recin
creada es diferente al de las otras, ya que sta es una vista (tabla virtual) mientras las otras son tablas reales definidas en

- 28 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

el sistema.

Figura 38: Arriba: definicin de la consulta (vista Diseo) que calcula la calificacin media de las pelculas del gnero dramtico. Abajo:
resultado de ejecutar esta consulta.

Por nuestra parte, ya slo resta definir la consulta sobre esta vista (consulta sobre consulta en realidad, tal y como
queramos). Para ello, creamos la consulta en vista Diseo con las caractersticas que se ilustran en la imagen de arriba de
la Figura 38 (fjate en las zonas marcadas en color rojo):
I Aadimos solamente la tabla Tabla_Consulta_Dramas al diseo de la consulta. sta es la tabla que representa la
vista recin creada.
I Seleccionamos los campos Calificacin y Gnero de la vista. Realmente, slo nos importa el primero para poder
efectuar el clculo del promedio que nos piden, pero hemos incluido el segundo para ilustrar el uso de la funcin
Agrupar.
I Utilizamos la funcin Promedio sobre el campo Calificacin. La funcin coge los valores para este campo de todos
los registros de la vista (cinco en nuestro ejemplo) y calcula su promedio ((10 + 10 + 9 + 9 + 8)/5 = 9,2). Justo lo
que deseamos. Tambin utilizamos una funcin, Agrupar en este caso, sobre el campo Gnero. Lo que pretendemos
es que se muestre un nico valor para aquellos registros que tengan el mismo dato en este campo. En nuestro ejemplo,
los cinco registros de la vista tienen, obviamente, el mismo valor (Drama) en este campo, por lo que se agrupan en

- 29 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

un nico valor (vase la imagen de abajo de la Figura 38). Hay ms funciones que pueden utilizarse en Base. Consulta
la bibliografa y la ayuda de la aplicacin para conocer ms detalles al respecto.
I Finalmente, pinchamos en el icono con forma de disquete que hay en la barra de herramientas y guardamos la consulta
con el nombre Promedio_Dramas.
El resultado de ejecutar la consulta se muestra en la imagen de abajo de la Figura 38. Podemos apreciar que el resultado
es correcto, ya que aunque en realidad la calificacin promedio es 9,2, el valor mostrado es un nmero entero (9) ya que as
es como se defini en su momento el campo Calificacin en la tabla Peliculas (vase la Figura 8). Observa, igualmente,
el efecto de la funcin Agrupar, usada en la consulta aplicndola sobre el campo Gnero de la vista (el gnero, Drama
obviamente, aparece una nica vez, agrupado su valor para todos los registros).

6.

Formularios

Llegado este punto, la parte final de esta somera introduccin a la gestin de bases de datos con LO Base, ya deberamos
tener claro que un buen diseo es parte importante en el funcionamiento de las bases de datos. No obstante, la parte
fundamental de las mismas es, sin duda, la informacin que contienen. Una base de datos es valiosa en la medida en que lo
es la informacin que contiene. Pero para poder extraer informacin primero hay que introducirla. La introduccin de datos
directamente en las tablas resulta pesada y propensa a cometer errores. Por este motivo, para que el usuario final de la base
de datos pueda introducirlos de una manera ms cmoda y eficaz, Base proporciona los formularios (forms en ingls).

Figura 39: Creamos un formulario usando el asistente de Base.

Los formularios son, pues, un tipo de objeto que va a permitir la introduccin de datos en las tablas de una forma ms
sencilla y mejorada. En lugar de introducir los datos directamente sobre la tabla, los datos se introducen en la tabla a travs
de los formularios. En una base de datos se puede crear ms de un formulario basado en una misma tabla. Un formulario
puede tomar algunos campos de una tabla o todos; incluso puede tomar campos de diferentes tablas o consultas en el caso
de las consultas, lo ms lgico es mostrar sus resultados, aunque para ello puede resultar ms adecuado la utilizacin de
informes.
As, mientras las tablas estn pensadas para almacenar la informacin, los formularios se encargan de recogerla. Es muy
importante que cierres las tablas con las que ests trabajando para que stas puedan incluir los datos introducidos en los
formularios. Al cerrar o guardar los formularios, las tablas se actualizan.

6.1.

Creacin mediante el asistente

En primer lugar, vamos a crear un formulario que permita introducir, de forma sencilla, datos en la tabla de actores. Lo
haremos usando el asistente para crear formularios que proporciona Base, tal como ilustra la imagen de la Figura 39.

- 30 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

La secuencia de imgenes que aparecen en la Figura 40 ilustra, paso a paso, el proceso de creacin de un formulario
sencillo para la introduccin de datos de actores, con una serie de opciones predeterminadas a elegir. Como siempre, la vista
Diseo proporciona mayor flexibilidad y mayor nmero de opciones, aunque tambin resulta un proceso ms complejo. Lo
veremos posteriormente cuando creemos un formulario para introducir los datos de las pelculas.

Figura 40: Proceso de creacin del formulario para la introduccin de datos en la tabla Actores empleando el asistente de Base.

El primer paso consiste en la seleccin de la tabla que va a quedar ligada al formulario y en la especificacin de los
campos que van a aparecer en el mismo (vase la imagen de la Figura 40(a)). Tambin podemos elegir una consulta, ya que
las consultas devuelven los datos en forma de tabla (recuerda las vistas), pero no tiene mucho sentido salvo para mostrar
informacin. En nuestro ejemplo, seleccionamos la tabla Actores de la lista desplegable y aadimos todos sus campos al
formulario (ya sabes, pinchando en el botn ), ya que queremos introducir todos los datos a travs del formulario (fjate
en las zonas enmarcadas en rojo de la imagen). Despus, pinchamos el botn Siguiente para pasar al siguiente paso.
El siguiente paso resulta un tanto ms complejo y, de hecho, no lo vamos a ver con detalle en este material de apoyo, por
lo que nos limitaremos a pinchar en el botn Siguiente, tal como indica la imagen de la Figura 40(b). Se trata de crear lo que
Base denomina subformularios. Un subformulario no es ms que un formulario relacionado con el que estamos creando y
resulta til cuando, por ejemplo, queremos introducir datos en una tabla y, al mismo tiempo, en otra(s) tabla(s) que pueda(n)
estar relacionada(s). Por ejemplo, si te fijas bien en la imagen (el texto est en gris porque no se ha activado), podrs ver que
en nuestro caso podramos aadir un subformulario basado en la tabla Papeles que est relacionada con Actores (repasa la
Seccin 3). Como hemos comentado, no vamos a explicar cmo configurar un subformulario. Si tienes curiosidad, puedes
averiguar ms detalles al respecto en la bibliografa.
El tercer paso consiste en configurar la apariencia del formulario (vase la imagen de la Figura 40(c)). Podemos decidir
si queremos que las etiquetas (rtulos que identifican los campos) aparezcan a la izquierda o a la derecha de las cajitas de
dilogo (seleccionamos izquierda) y la disposicin de los elementos en el formulario (hemos elegido en columnas con las
etiquetas al lado elegido arriba). Otras disposiciones posibles son en columnas con las etiquetas arriba, en forma de tabla

- 31 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

o agrupados. Tras elegir las opciones deseadas, hemos de pinchar nuevamente en el botn Siguiente, lo que nos llevar al
cuarto paso, donde hemos de decidir cmo vamos a utilizar el formulario (vase la imagen de la Figura 40(d)):

Figura 41: Aspecto de la ventana central de gestin tras crear el formulario Form_Intro_Actores.

I Slo para introducir datos nuevos. El formulario no va a permitir navegar por los registros ya introducidos en la
tabla (Actores en nuestro ejemplo), por lo que no mostrar los datos existentes. sta es la manera en que hemos
decidido utilizarlo en nuestro ejemplo.
I Mostrando todos los registros. De esta manera s que permitimos visualizar los datos de todos los registros previamente introducidos. En este caso, podemos extender el control del formulario a tres niveles diferentes:
Mostrar los datos existentes, pero no permitir su modificacin. Por tanto, slo podemos introducir datos nuevos.
No permitir el borrado de datos existentes. Podemos modificar los datos, pero no borrar registros existentes,
aparte de introducir datos nuevos como en el caso anterior.
No permitir la introduccin de nuevos datos. Es decir, usaremos el formulario para modificar datos existentes.
Combinado con los anteriores, ni siquiera eso podremos hacer, aunque esto slo tiene sentido si se trata de
mostrar los datos de una consulta.
Una vez pinchado el botn Siguiente, pasamos al penltimo paso, en el que hemos de decidir sobre cuestiones meramente
estticas: el color de fondo de la pantalla del formulario y el efecto de los bordes de los campos. En la Figura 40(e) puedes
apreciar que hemos elegido el color Azul hielo y el efecto 3D, respectivamente. Una vez ms, pinchamos el botn
Siguiente y, ahora, pasamos al ltimo paso, donde nicamente hemos de introducir un nombre para guardar el formulario
y decidir si deseamos ejecutarlo o modificarlo en la ventana de diseo al finalizar el proceso. Si te fijas en la imagen de
la Figura 40(f) vers que hemos guardado el formulario con el nombre Form_Intro_Actores y que hemos seleccionado la
opcin de ejecutarlo (trabajar con l). Concluiremos el proceso haciendo clic en el botn Finalizar. Tras crear el formulario,
el aspecto de la ventana central de gestin de Base ser similar al que ilustra la Figura 41.
La Figura 42 muestra el resultado de ejecutar el formulario que acabamos de crear con el asistente. El usuario se limitar a
introducir nuevos datos en las correspondientes cajas de texto. Observa (abajo a la izquierda en la imagen) que el formulario
slo permite mostrar los registros nuevos que estamos introduciendo con l, tal como lo habamos configurado (recuerda
que tenamos ya cinco actores en nuestra base de datos; observa la Figura 14).
En la imagen de la Figura 42 hemos destacado tres botones de la barra de herramientas de abajo (fjate en los recuadros de
color rojo). De izquierda a derecha, respectivamente, permiten avanzar al siguiente o retroceder al anterior registro, guardar
los datos de los registros introducidos en el formulario (ste es el que usaremos preferiblemente para guardar los datos
escritos en el formulario en la tabla de la base de datos) y actualizar la base de datos con los registros introducidos en el
formulario, tal como indican los rtulos de la imagen.

- 32 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 42: Ejecutamos el formulario Form_Intro_Actores e introducimos los datos del actor Philip Seymour Hoffman.

Figura 43: Registros de la tabla Actores tras guardar la entrada anterior en el formulario (se han aadido los datos de Philip Seymour
Hoffman).

La Figura 43 muestra el contenido de la tabla Actores tras guardar los datos introducidos en el formulario para el actor
Philip Seymour Hoffman. Observa que se ha aadido un nuevo registro con dichos datos al final de la tabla. Recuerda que
para poder usar el formulario de introduccin de datos es necesario que la tabla est cerrada, si no, se producirn errores.
Al hilo de los errores que pueden producirse, conviene recordar que el campo Id_Actor es la clave primaria de la tabla
Actores, por lo que los valores que se introduzcan en este campo deben ser nicos. El formulario comprueba este tipo de
restricciones (entre otros) y no deja introducir registros con claves duplicadas, tal como ilustra la Figura 44. El error se
produce porque estamos intentando guardar un nuevo registro (los datos del actor Tommy Lee Jones) con valor 6 para el
campo Id_Actor, el cual coincide con la clave de Philip Seymour Hoffman, previamente introducido (observa atentamente
las marcas en rojo de la imagen).

6.2.

Creacin en vista diseo

A continuacin, vamos a crear un formulario para introducir los datos de las pelculas empleando la vista Diseo, tal
como prometimos con anterioridad. El proceso va a ser ms complejo y arduo, a cambio de tener una mayor flexibilidad y
control total en la definicin del formulario (lgicamente, tambin se requiere algo ms de conocimiento). Para empezar,
haremos clic en la opcin que permite crear un formulario en la vista Diseo desde la ventana central de gestin, tal como
se indica en la Figura 45.
En este momento aparece la ventana para el diseo de formularios, con un aspecto similar al que muestra la Figura 46.
Podemos distinguir la zona central despejada de la ventana donde vamos a ir aadiendo los diversos campos que conforman el formulario, as como las barras de herramientas que hay a la izquierda y abajo, respectivamente la de campos del
formulario (izquierda), diseo del formulario (abajo a la izquierda) y dibujo (abajo a la derecha). Nosotros emplearemos

- 33 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 44: Se produce un error al intentar guardar los datos de un nuevo actor con una clave ya existente en el formulario.

Figura 45: Creamos un formulario en la vista Diseo de Base.

fundamentalmente la primera (campos del formulario).


El primer paso que tenemos que dar es crear un formulario nuevo. Para ello, procederemos tal como ilustra la Figura 47.
Ejecutamos el Navegador del formulario pinchando en el botn enmarcado en un cuadro rojo de la barra diseo del
formulario. Entonces, emerge una ventana pequea dentro del formulario. Hacemos clic con el botn derecho del ratn
sobre Formularios y seleccionamos la opcin Formulario dentro de Nuevo del men contextual.
A continuacin, le damos un nombre al formulario que acabamos de crear, Form_Intro_Pelis en nuestro caso, tal como
indica la Figura 48. Para ello, simplemente pinchamos con el ratn en la cajita enmarcada en rojo y tecleamos el nombre
que deseemos.
Ahora, vamos a configurar las propiedades del formulario. Hemos de hacer clic con el botn derecho del ratn sobre el
nombre del formulario recin creado y elegir la opcin Propiedades del men contextual emergente. En ese momento aparece la ventana que muestra la imagen de la Figura 49. Hacemos clic en la pestaa Datos y seleccionamos la tabla Peliculas
como el contenido para el formulario, ligando de esta manera la tabla y el formulario (fjate en la zona encuadrada en

- 34 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 46: Ventana para el diseo de formularios en Base.

Figura 47: Usamos el navegador para crear un nuevo formulario.

rojo en la parte de arriba de la ventana).


Las opciones marcadas en rojo abajo en la imagen tienen que ver con la configuracin de la forma en la que vamos
a utilizar el formulario, algo que ya comentamos debidamente cuando empleamos el asistente para crear nuestro primer
formulario (recuerda la imagen de la Figura 40(d) y los prrafos de texto que la comentaban). En este caso, vamos a usar el
formulario tanto para aadir datos como para modificar los existentes, navegando por los registros de la tabla. Igualmente,
vamos a permitir el borrado completo de registros (fjate bien en las opciones elegidas en la imagen de la Figura 49).
Llega el momento de guardar en disco por primera vez el formulario que hemos creado (conviene ir guardando con cierta
frecuencia el trabajo efectuado). Para ello, pinchamos en el botn con forma de disquete de la barra de herramientas que
hay en la parte superior de la ventana de diseo de formularios, tal como indica la Figura 50. En la ventana que emerge a
continuacin indicamos el nombre del archivo donde va a guardarse el formulario (usamos el mismo nombre que le dimos
al formulario, Form_Intro_Pelis) y pinchamos en el botn Guardar, tal como ilustran las zonas marcadas en rojo en la
imagen (por cierto, fjate que aparece el formulario Form_Intro_Actores que creamos con el asistente).
Vamos a aadir el primer campo del formulario. Se trata de un campo de texto que vamos a utilizar para insertar (si
aadimos un registro nuevo) o mostrar (si visualizamos los datos de uno ya existente) los datos del identificador de pelculas

- 35 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 48: Le damos el nombre Form_Intro_Pelis al formulario recin creado.

Figura 49: Accedemos a las propiedades del formulario para configurarlo adecuadamente.

(campo Id_Peli en la tabla Peliculas). Para aadir campos al formulario, emplearemos siempre la barra de herramientas
campos del formulario que hay a la izquierda, tal como ilustra la Figura 51. Fjate que pinchamos el botn Campo de
texto. En ese momento, el cursor cambia su forma. Si arrastramos con el ratn (manteniendo pulsado el botn izquierdo)
sobre el rea en blanco del formulario definimos el espacio que ocupar el campo en el formulario. Posteriormente, podemos
usar los tiradores (cuadraditos de color verde) para definir mejor el tamao (pinchando y arrastrando con el ratn). Tambin
podemos mover el control y situarlo donde queramos arrastrndolo con el ratn.
Lo ms importante es definir las propiedades de los controles que vamos aadiendo al formulario (en este momento slo
hemos aadido el campo de texto), ligndolos con los campos correspondientes de la tabla de la base de datos asociada al
mismo. Para poder hacer esto, tenemos que hacer clic con el botn derecho del ratn sobre el control cuyas propiedades
deseamos configurar y seleccionar la opcin Campo de control. . . del men contextual que aparece. En ese momento,
aparece una ventana como la que ilustra la Figura 52.
En la pestaa Datos (vase la Figura 52) seleccionamos el campo de la tabla Peliculas que deseamos asociar al control,
Id_Peli en nuestro ejemplo. Por otro lado, usaremos la pestaa General para darle un nombre al control que lo identifique
de forma nica en el formulario y para configurar sus opciones de aspecto y contenidos. Observa las opciones marcadas

- 36 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 50: Guardamos el formulario en un archivo con su mismo nombre.

Figura 51: Aadimos un campo de texto al formulario. Arrastrando las tiras con el ratn controlamos sus dimensiones. Para mover el
campo de texto basta con arrastrarlo con el ratn.

en rojo en la Figura 53, donde le hemos puesto el nombre Campo_Id_Peli al control y donde hemos dejado las opciones
de configuracin por defecto: el control est activado (si no, no podra usarse en el formulario), es visible (podemos tener
formularios con campos invisibles para el usuario internos, para la gestin de datos del formulario, aunque esto es algo
ms avanzado que no vamos a tratar) y permite escribir datos en l (si fuese de slo lectura se limitara a mostrar los datos,
lo cual no tiene sentido si pretendemos usarlo para aadir nuevos registros o modificar los ya existentes). Hay ms opciones,
pero estudiarlas queda fuera del objetivo de esta prctica. Si tienes curiosidad al respecto consulta la bibliografa y la propia
ayuda de la aplicacin.
Obviamente, un formulario donde slo aparecen controles (por ejemplo, cajas de texto donde debemos cumplimentar
datos) y nada ms, no tiene mucha utilidad para un usuario final (ni siquiera para un informtico!), ya que no sabra
qu datos escribir en qu sitios. Necesitamos aadir rtulos (etiquetas en la jerga de Base) al formulario que indiquen
explcitamente a qu tipo de informacin hace referencia cada control. En la Figura 54 se ilustra el proceso de insercin de
una etiqueta en el formulario. Hemos enmarcado en rojo el botn de la barra de herramientas de la izquierda que hay que
pinchar para aadir una etiqueta. Para situarla en la ventana del formulario procederemos de la misma manera que hicimos

- 37 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 52: Accedemos a las propiedades del campo de texto, concretamente a la pestaa Datos, para asociarle un campo de la tabla
Peliculas.

Figura 53: En la pestaa General asignamos un nombre que haga referencia al campo del formulario.

con el campo de texto anterior (y como haremos, de ahora en adelante, con cualquier control que aadamos al formulario).
Una etiqueta tiene una serie de propiedades, entre las que vamos a destacar el nombre que la identifica en el formulario,
su ttulo o leyenda (el texto que va a mostrar), el tipo de letra (fuente, tamao, efectos. . . ) que emplea y su alineacin (tanto
horizontal como vertical) dentro de la caja que la contiene. Para poder acceder a la ventana que permite configurar sus
propiedades, hemos de hacer doble clic sobre la etiqueta. Entonces aparece la ventana que podemos ver en la Figura 54,
donde hemos marcado en rojo las opciones escogidas en nuestro caso (fjate bien). El texto que va a mostrar la etiqueta es
Identificador:, como puede apreciarse, en fuente Arial, negrita y tamao 10 pt. El tipo de fuente y sus caractersticas se
escogen en otra ventana que aparece al pinchar en el botoncito de la derecha con la forma . . . .
Recuerda que tienes que ir guardando cada cierto tiempo el trabajo efectuado. Para ello, has de pinchar en el icono con
forma de disquete en la barra de herramientas que hay en la parte de arriba de la ventana del diseador, tal como se expuso
en la Figura 50. Ahora, tras crear el campo de texto y su rtulo correspondiente, es un buen momento para hacerlo.
Puesto que ya sabemos crear campos de texto y asociarlos con los campos correspondientes de la tabla ligada al
formulario y poner los rtulos adecuados, vamos a saltarnos unos cuantos pasos, en una pequea elipsis temporal, en

- 38 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 54: Aadimos una etiqueta (texto) al formulario.

Figura 55: Aspecto del formulario tras haber aadido los cinco campos de texto.

el proceso de diseo de nuestro formulario para manipular la tabla Peliculas. En estos momentos, tras crear controles asociados a los campos Id_Peli, Ttulo, Director, Gnero y Sinopsis, el aspecto de nuestro formulario es el que se muestra en
la Figura 55. Procedemos, a continuacin, a aadir otros controles para entrada de datos diferentes a las meras cajas de
edicin que ofrece el control para campos de texto.
En primer lugar, vamos a aadir una casilla de verificacin que vamos a asociar, en la pestaa Datos de la ventana que
muestra sus propiedades, al campo Prestada de la tabla Peliculas. Recuerda que este campo era de tipo booleano (S/No
o True/False, como prefieras) y que serva para indicar si habamos prestado la pelcula a alguien o no. Precisamente, la
casilla de verificacin es un tipo de control que slo ofrece dos posibilidades para la entrada de datos: o est seleccionado
o no lo est (es decir, S/No, como el campo de la base de datos que hemos asociado). En la Figura 56 hemos marcado en
rojo tanto el botn de la barra de herramientas de la izquierda que hay que pinchar para aadirlo al formulario, como las
opciones de configuracin de su aspecto elegidas en la pestaa General de la ventana que muestra sus propiedades.
Ya deberas saber que, para acceder a la ventana de propiedades, hemos de hacer clic con el botn derecho del ratn
sobre el control que deseamos configurar y escoger la opcin Campo de control. . . del men contextual que emerge, o

- 39 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 56: Aadimos una casilla de verificacin para marcar si la pelcula est prestada o no.

bien hacer doble clic sobre l. En la imagen de la Figura 56 lo hemos nombrado como Casilla_Prestada, hemos escrito el
texto Prestada como leyenda a mostrar en el formulario, hemos cambiado el tipo de fuente (la misma que en el resto de
rtulos del formulario) y dejamos como Estado predeterminado el valor No seleccionado, que es el valor por defecto.
Esto ltimo sirve para indicar qu valor va a tener este campo en caso de que el usuario no realice ninguna accin sobre l
(deberamos fijar el valor que con mayor frecuencia introduzcan los usuarios). Recuerda que en la pestaa Datos hay que
asociar el control con el campo Prestada de la tabla Peliculas, aunque no lo hayamos mostrado en una figura.

Figura 57: Aadiendo otro tipo de campos, en este caso un campo de fecha.

Si recuerdas vase la Seccin 2 en la tabla Peliculas tenamos el campo Ao para almacenar la fecha de estreno de la
pelcula en nuestro pas. Pues bien, la herramienta de diseo de formularios de Base proporciona un tipo de control especfico para la introduccin de datos de tipo fecha. Procedemos a aadir un control de esta naturaleza en nuestro formulario,
que vamos a asociar con el campo Ao de la tabla Peliculas recuerda, en la pestaa Datos de la ventana de propiedades.
Para ello, basta con seguir las indicaciones que se muestran en la Figura 57. Primero pinchamos en el botn Ms campos

- 40 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

de control de la barra de herramientas de la izquierda para poder acceder a la pequea ventana emergente que los muestra
y, en ella, hacemos clic en el botn que hemos resaltado con un crculo rojo en la imagen (tiene un pequeo icono en
forma de calendario). Entonces, podemos aadir el control al formulario y, como ya sabemos, configurarlo en la ventana
de propiedades (ya deberas saber cmo acceder a ella). En nuestro caso, queremos que te fijes en las opciones que hemos
marcado en rojo en la pestaa General, aparte de las ya conocidas, de arriba a abajo:
I Como siempre, el nombre que asignamos al control, Campo_Estreno en nuestro caso.
I Indicamos que deseamos que se controle el formato, es decir, que si el usuario introduce un valor para la fecha que
no concuerde con el formato que definimos ms abajo, el formulario mostrar un error.
I Controlamos que no se introduzcan fechas anteriores al 1 de enero de 1900 ni posteriores al 31 de diciembre de 2100.
I Establecemos que el usuario debe especificar la fecha con el siguiente formato: dos cifras para indicar el da, seguido
de barra, dos cifras para indicar el mes, nuevamente una barra y, finalmente, cuatro cifras para especificar el ao.

Figura 58: Asistente para aadir un elemento cuadro de grupo al formulario: primera ventana.

Vamos a aadir, a continuacin, un control que requiere mayor elaboracin. Se trata de lo que Base denomina cuadro de
grupo. Pero antes, expliquemos cul es el motivo de emplearlo en nuestro formulario. Si recuerdas, en la definicin de la
tabla Peliculas (vase nuevamente la Seccin 2) habamos definido el campo Formato para guardar la informacin relativa
al tipo de formato en el que est codificada la pelcula. Realmente, slo disponemos en nuestra casa de pelculas en formato
digital, guardadas en soporte DVD (y codificadas como tal) o bien en soporte CD (y codificadas como Vdeo-CD, DivX
o XviD). Es decir, que realmente slo dispongo de cuatro alternativas posibles a la hora de establecer un valor para este
campo de la tabla.
El cuadro de grupo es el control que mejor se adeca a las caractersticas del campo Formato, ya que slo permite elegir
una de entre varias (pocas, habitualmente) opciones posibles. Para crearlo, necesitamos activar la ventanita que muestra
ms campos de control (ya hemos visto cmo anteriormente) y hacer clic en el botn que se muestra enmarcado en rojo en
la Figura 58. Al aadir este control al formulario, ocurre algo que no haba sucedido anteriormente con el resto de controles
aadidos: aparece la ventana de un asistente que nos va a guiar paso a paso en la configuracin de este control (ya habamos
advertido que resultaba un proceso ms complejo). Observa en la Figura 58, que el primer paso del asistente va a consistir,
precisamente, en definir los nombres de las opciones que va a mostrar el control.
Para aadir una opcin a la lista, basta con escribir el texto deseado en la caja de texto Qu nombres deben contener
los campos de opcin? y hacer clic en el botn (si queremos quitar o modificar el nombre de una opcin, basta con
seleccionarla en la lista de la derecha y pinchar el botn para editarla convenientemente en la caja de texto). Al final del
proceso, el resultado ser el que se muestra en la Figura 59. En ese momento pinchamos el botn Siguiente, tal como se
indica en dicha imagen.
En el paso siguiente, el asistente pregunta qu opcin debe marcarse como predeterminada (si es que ha de marcarse
alguna) en el caso de que el usuario no marque ninguna al introducir datos con el formulario. Puesto que en nuestro caso la

- 41 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 59: Asistente para aadir un elemento cuadro de grupo al formulario: asignamos los nombres a las opciones.

Figura 60: Asistente para aadir un elemento cuadro de grupo al formulario: seleccionamos la opcin predeterminada.

mayora de pelculas estn en formato DVD, aprovechamos para fijar esta opcin como predeterminada, tal como ilustra la
Figura 60. Fjate que si no deseamos fijar ninguna opcin habra que pinchar en No, no debe ser seleccionado ningn
campo. Luego, hacemos clic en el botn Siguiente.
Ahora hemos de asignar los valores que realmente se van a almacenar en el campo Formato de la tabla Peliculas segn
la opcin que elija el usuario. Es decir, que lo que hemos hecho hasta ahora realmente es definir los rtulos que ver el
usuario del formulario. Pero esos rtulos no tienen por qu coincidir con los valores (datos) que se van a guardar en la tabla.
ste es el momento para asociar los valores a almacenar (datos) con dichos rtulos. En nuestro ejemplo, s que se da esta
coincidencia entre rtulos y valores a almacenar. Puedes apreciar en la figura 61 que son los mismos (en la imagen se ilustra
solamente el caso del rtulo DVD asociado con el texto dato DVD que se almacenar cuando el usuario escoja esta
opcin, pero para el resto es igual). Nuevamente pinchamos en el botn Siguiente cuando terminemos con esta ventana.

- 42 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 61: Asistente para aadir un elemento cuadro de grupo al formulario: asignamos los valores a los nombres de las opciones.

Figura 62: Asistente para aadir un elemento cuadro de grupo al formulario: asignamos campo de la base de datos (tabla Peliculas en
este caso) al cuadro de grupo.

Todava no hemos asociado realmente el control de cuadro de grupo con ningn campo de la tabla Peliculas, aunque est
claro, a tenor del discurso efectuado, que es el campo Formato el que est en nuestro pensamiento. Ahora es el momento de
establecer esta asociacin, tal como ilustra la Figura 62.
Finalmente, slo resta por escribir el ttulo (leyenda) que mostrar en el formulario el cuadro de grupo al usuario. Hemos
decidido escribir el texto Formato almacenamiento, tal como ilustra la Figura 63. Posteriormente, pinchamos en el botn
Finalizar para concluir el proceso. Puedes apreciar mejor los detalles de este cuadro de grupo en el formulario de la
Figura 67. Por cierto, si te fijas bien, podrs apreciar que se ha definido otro cuadro de grupo. Sabras indicar cul es?
Por ltimo, analicemos otra situacin peculiar que se produce a la hora de insertar (o modificar) los datos de una pelcula.
En la tabla Peliculas definimos el campo Id_Estuche para almacenar el identificador del estuche donde se guarda la pelcula;

- 43 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 63: Asistente para aadir un elemento cuadro de grupo al formulario: escribimos el rtulo para el ttulo del cuadro.

Figura 64: Asistente para aadir un elemento cuadro de lista al formulario: indicamos la tabla que va a usarse para rellenar la lista.

de hecho, este campo se utilizaba como clave externa para representar la relacin 1:M entre las tablas Estuches y Peliculas
(consulta las Secciones 2 y 3). Sera interesante que, a la hora de introducir este dato, el usuario pudiese elegir solamente
entre los valores proporcionados por una lista que se cargase automticamente con los datos almacenados en la tabla
Estuches (es decir, los estuches que realmente tenemos).
Precisamente para eso, Base proporciona el campo de control denominado listado o cuadro de lista. Vamos a aadir,
pues, un control de este tipo que se alimente de los diferentes valores del campo Localizacion de la tabla Estuches. Para
ello, hay que hacer clic en el botn de la barra de herramientas de la izquierda que se muestra enmarcado en rojo en la
Figura 64. Al aadir este control al formulario, nuevamente aparece la ventana de un asistente que nos va a guiar paso a
paso en su configuracin. Observa en la Figura 64, que el primer paso del asistente va a consistir, precisamente, en indicar

- 44 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

cul es la tabla de la cual deben tomarse los datos que van a rellenar el contenido de la lista. Nosotros hemos seleccionado,
obviamente, la tabla Estuches, tras lo cual hacemos clic en el botn Siguiente.

Figura 65: Asistente para aadir un elemento cuadro de lista al formulario: ahora indicamos cul es el campo de donde deben tomarse
los valores para rellenar la lista.

A continuacin, indicamos cul es el campo de la tabla seleccionada (Estuches) cuyos datos se mostrarn en el listado.
En nuestro ejemplo, es el campo que almacena la localizacin de los estuches en la tabla Estuches el que va a proporcionar
los valores para rellenar las opciones de la lista. Por tanto, elegimos el campo Localizacion y hacemos clic en el botn
Siguiente, tal como muestra la Figura 65.

Figura 66: Asistente para aadir un elemento cuadro de lista al formulario: ltimo paso, indicamos los campos relacionados en ambas
tablas.

- 45 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Como colofn, tan slo resta indicar cules son los campos de ambas tablas a travs de los cuales se establece la relacin
1:M. El contenido de ambos campos debe coincidir para mostrar el valor adecuado de los registros existentes en el cuadro
de lista. Estos campos son los denominados Id_Estuche en ambas tablas, tal como ilustra la Figura 66. Tras seleccionar
ambos en sus respectivos cuadros (fjate en los recuadros en rojo), hacemos clic en el botn Finalizar. En este momento,
hemos terminado con el diseo del formulario. Guardamos los cambios, cerramos la ventana de diseo de formularios y
volvemos a la ventana central de gestin de Base.

Figura 67: Mostrando los datos de la primera pelcula de la tabla Peliculas con el formulario que acabamos de disear.

La Figura 67 muestra el resultado de ejecutar el formulario recin diseado (haciendo doble clic en el nombre del
formulario desde la ventana central de gestin). Podemos apreciar que, inicialmente, se muestran los datos del primer
registro (pelcula) almacenado en la tabla Peliculas. Recuerda las propiedades que definimos para este formulario (vase
la Figura 49). Observa atentamente el contenido de los campos del formulario y su relacin con los campos de la tabla
Peliculas.
Tambin podemos usar este formulario para introducir nuevos registros (pelculas) en la base de datos, tal como ilustra
la Figura 68 (insertamos los datos de la pelcula Happiness). Para ello, nos desplazamos hasta el ltimo registro (usando la
barra de navegacin de abajo) y nos situamos una posicin ms. Entonces aparece el formulario con los campos vacos (o
con los valores por defecto) esperando que los rellenemos. Eso es lo que hacemos, empleando los valores que aparecen en
la Figura 68. Para guardarlos en la tabla Peliculas pinchamos en el botn con forma de disquete en la barra de herramientas
de abajo (est enmarcado en rojo en la imagen).
Si ahora cerramos el formulario y abrimos la tabla Peliculas desde la ventana central de gestin, podemos apreciar
que se ha aadido correctamente el registro con los datos introducidos en el formulario, tal como ilustra la Figura 69. Si
en cualquier momento se desea modificar el diseo del formulario, haremos clic con el botn derecho del ratn sobre el
nombre del mismo en la ventana central de gestin y elegiremos la opcin Editar del men contextual emergente para abrir
la ventana de diseo de formularios y as poder modificarlo.

7.

Informes

Los informes son documentos que se utilizan para presentar los datos de una forma que resulte ms legible por parte de,
por ejemplo, los directivos de una empresa. Normalmente los informes van asociados con la ejecucin de consultas, aunque
tambin pueden utilizarse para presentar los datos almacenados en una tabla. Es decir, su objetivo es recuperar informacin
de la base de datos, igual que las consultas, pero con un formato que facilita su presentacin e impresin en papel. Es ms,
los informes y las consultas suelen complementarse ya que los informes suelen construirse a partir de consultas almacenadas
y no a partir de las tablas.
Para crear un informe, usaremos el asistente que proporciona Base, tal como ilustra la Figura 70. Aunque en la versin
de Linux se nos ofrece la posibilidad de usar la vista Diseo, sta es bastante farragosa y no funciona muy bien, por lo que

- 46 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 68: Aadimos un nuevo registro a la tabla Peliculas con el formulario que acabamos de disear.

Figura 69: Registros de la tabla Peliculas tras guardar la entrada anterior en el formulario (se han aadido los datos de la pelcula
Happiness).

es preferible crear los informes con el asistente y, luego, editarlos posteriormente en la vista Diseo para corregir pequeos
detalles. Nosotros no vamos a comentar nada del diseo de informes.
Vamos a crear un informe que va a mostrar toda la informacin significativa5 de la tabla de las pelculas, excepto la
sinopsis, agrupando las pelculas segn sea su gnero. Para ello, ejecutaremos el asistente de Base.
El proceso de creacin de este informe se ilustra en la secuencia de imgenes de la Figura 71. En primer lugar, hemos
de proceder a seleccionar los campos de informacin que se desean incluir en el informe. Para poderlo hacer tenemos
que seleccionar previamente la tabla Peliculas, como muestra la imagen de la Figura 71(a). La imagen de la Figura 71(b)
muestra los campos que hemos aadido al informe, como siempre, empleando el botn >. A continuacin, pinchamos el
botn Siguiente.
El segundo paso, ilustrado en la Figura 71(c), consiste en la definicin de las etiquetas (o rtulos) que van a usarse en
el informe para referirse a los diversos campos de informacin. Por defecto, el asistente de Base sugiere usar los mismos
nombres de los campos. En nuestro ejemplo , simplemente hemos cambiado el rtulo asociado al campo Ao, que pasa a
ser Fecha de estreno (vase la imagen mencionada). Pasamos al siguiente paso del asistente haciendo clic en el botn
Siguiente.
Ahora, hemos de definir los niveles de agrupacin que deseemos utilizar en nuestro informe. Qu es esto? Significa
agrupar en el listado todos aquellos registros de la tabla (o consulta) que posean el mismo valor para un campo o una
serie de campos dados. En nuestro caso, deseamos agrupar en el listado todas aquellas pelculas que pertenezcan al mismo
5 En

este caso, por significativa entendemos todos los datos que no son claves.

- 47 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 70: Creamos un informe usando el asistente de Base.

gnero, por lo que indicaremos que vamos a usar el campo Gnero para crear las agrupaciones, tal como ilustra la imagen
de la Figura 71(d). Nuevamente pasamos al siguiente paso haciendo clic en el botn Siguiente.
En el cuarto paso, el asistente solicita que definamos los criterios de ordenacin, es decir, que indiquemos los campos
que contienen los valores que vamos a usar para ordenar los registros en el listado. Observa atentamente la Figura 71(e).
El primer criterio de ordenacin no se puede modificar (aparece en gris), ya que se trata del campo Gnero que se va a
utilizar para agrupar los registros, luego va a ser un criterio de ordenacin que es obligado emplear. Lo nico que podemos
modificar es si queremos un orden ascendente o descendente. Por nuestra parte, hemos decidido ordenar las pelculas, dentro
del mismo gnero, por fecha de estreno, de ms antigua a ms moderna, (segundo criterio de ordenacin) y, posteriormente
por orden alfabtico del ttulo (tercer criterio de ordenacin). Una vez definidos estos criterios, pasamos al siguiente paso
(pinchando en el botn Siguiente).
A continuacin, hemos de decidir el aspecto que va a tener el informe (vase la Figura 71(f)). Decidimos dejar las
opciones por defecto (observa las zonas marcadas en rojo) y pasar al siguiente paso pinchando en el botn Siguiente.
En el ltimo paso, el asistente va a proceder a crear el informe. Pero antes de hacer clic en el botn Finalizar, hemos de
indicar cul es el ttulo del informe que tambin ser el nombre que se le asignar al informe en Base, si queremos que el
informe sea esttico o dinmico y si pretendemos crearlo o poder entrar en la ventana de diseo para poder modificarlo. Se
puede apreciar en la Figura 71(g) que el ttulo del informe (que coincidir con su nombre) es Mis pelculas, que deseamos
crear un informe dinmico y que queremos abrirlo para poder modificarlo en la ventana de diseo. Se puede apreciar el
aspecto de la ventana de diseo de informes en la Figura 72. Ojo! sta es la nica parte de la aplicacin que difiere entre las
versiones de Windows y Linux. La ventana que mostramos es la que aparece en la versin 3.1 de LibreOffice para Linux.
En Windows el aspecto es distinto, as como las diversas opciones de configuracin para el aspecto del informe (consulta la
bibliografa).
El lector curioso se preguntar, sin duda, cul es la diferencia entre un informe esttico y uno dinmico. Pues bien,
realmente la diferencia slo se aprecia cuando creamos un informe asociado con una consulta, como haremos a continuacin
para concluir con este texto. En el primer caso esttico los datos que mostrar siempre el informe sern los que tuviera la
consulta realizada en el momento de la creacin, es decir, una vez creado el informe, los datos que muestra siempre sern
los mismos. En el segundo caso dinmico cada vez que generemos el informe (haciendo doble clic sobre su nombre en la
ventana central de gestin), los datos que se van a mostrar son los que tenga la base de datos en el momento de la llamada.
Normalmente, optaremos por crear informes de tipo dinmico.
La Figura 73 muestra el aspecto que tiene la ventana central de gestin de Base despus de haber creado este informe.
Para generarlo, tenemos que hacer doble clic con el botn izquierdo del ratn sobre su nombre (Mis pelculas).
Al generar este informe se abre un documento en el formato que usa el procesador de texto Writer, integrado en la suite
LO. La Figura 74 muestra el documento abierto en Writer, el cual podemos guardar en formato PDF o imprimir empleando
los iconos apropiados de la barra de herramientas de dicho programa (enmarcados en rojo en la imagen). Tambin podemos
guardar el documento en una gran variedad de formatos a elegir empleando la opcin Guardar como. . . del men Archivo

- 48 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 71: Proceso de creacin de un informe que muestra los datos de las pelculas (menos la sinopsis) agrupados por gnero.

de Writer (marcado con un crculo rojo en la imagen).


Para concluir, queremos crear un informe que muestre el ttulo, el nombre del director y la calificacin de todas las
pelculas protagonizadas por el actor Ethan Hawke. De paso, queremos que tambin aparezca el nombre del personaje que
interpreta en la pelcula y la valoracin que merece su actuacin, as como el lugar donde se guarda el estuche que almacena
la correspondiente pelcula. Deseamos, adems, que el informe muestre, en una cabecera, el nombre y la nacionalidad del
actor.
Realmente, no podemos crear un informe directamente con todos estos datos, ya que implicara acceder a varias tablas,
y ya hemos aprendido (vase el primer paso del asistente en la imagen de la Figura 71(a)) que un informe slo puede estar
vinculado a una tabla al mismo tiempo. Qu podemos hacer, pues? La respuesta es muy sencilla, y tambin la podemos
apreciar en la imagen que acabamos de mencionar. Un informe tambin puede vincularse a una consulta, es decir, ejecutar
dicha consulta, recoger la tabla con los datos resultantes (recuerda, una consulta devuelve una tabla) y mostrarlos en el

- 49 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 72: Ventana de diseo de informes.

Figura 73: Aspecto de la ventana central de gestin de Base tras crear el informe Mis pelculas.

informe segn el formato elegido.


Por tanto, en primer lugar, vamos a crear una consulta que devuelva la informacin solicitada. Esta consulta utilizar
las cuatro tablas que hemos creado en nuestro ejemplo de base de datos, ya que necesitamos acceder a la tabla Actores
para obtener el identificador de Ethan Hawke a partir de su nombre, a la tabla Papeles para averiguar qu pelculas ha
protagonizado Ethan Hawke (obtendramos sus identificadores) y conocer el personaje interpretado y la valoracin de
su actuacin, a la tabla Peliculas para obtener el ttulo, nombre del director y calificacin a partir del identificador y,

- 50 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 74: Resultado de generar el informe Mis pelculas.

Figura 75: Resultado de ejecutar la consulta que muestra todas las pelculas protagonizadas por Ethan Hawke.

finalmente, a la tabla Estuches para obtener la localizacin de los mismos a partir de sus identificadores conseguidos de la
tabla Peliculas. El resultado de ejecutar esta consulta, cuya creacin dejamos como ejercicio al lector, se puede apreciar en
la Figura 75.
Ahora s que podemos crear el informe solicitado que, realmente, vamos a vincular con la consulta que hemos creado
con el nombre Pelis_Ethan_Hawke. En la Figura 76 se ilustra el proceso de creacin de este informe empleando el asistente de Base. En dicha figura slo hemos mostrado las imgenes correspondientes a las ventanas donde realmente hemos
configurado alguna cosa cambiando las opciones por defecto.
As, podemos apreciar en la imagen de la Figura 76(a) que hemos seleccionado la consulta Pelis_Ethan_Hawke como
vnculo para el informe. Adems hemos aadido todos los campos de la consulta al informe, ya que los vamos a usar de una
u otra forma. Saltando al tercer paso del asistente, se puede apreciar en la imagen de la Figura 76(b) que hemos definido
dos niveles de agrupacin: el nombre y la nacionalidad del actor. Por qu? Recuerda que deseamos mostrar una cabecera
en el informe con dichos datos. Fjate en el informe resultante mostrado en la Figura 77 y entenders el porqu.
La imagen de la Figura 76(c) muestra que hemos elegido otra disposicin para el aspecto del informe. Observa el resultado
en la Figura 77 y compara el resultado con el otro informe que generamos antes (vase la Figura 74), fijndote en las
opciones de aspecto que hemos elegido en cada caso. En la ltima ventana del asistente, justo antes de finalizar el proceso

- 51 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

Figura 76: Proceso de creacin del informe (slo ventanas donde se cambian los valores por defecto) asociado a la consulta mostrada en
la Figura 75.

de creacin del informe, seleccionamos las opciones Informe dinmico (ahora s que resulta trascendente al tratarse de un
informe vinculado a una consulta) y Crear informe ahora para que lo muestre inmediatamente, tal como puede apreciarse
en la Figura 76(d). Fjate que el nombre que el asistente de Base sugiere para el informe (Ttulo del informe) es el mismo
que le dimos a la consulta con la cual est vinculado Pelis_Ethan_Hawke. Hemos decidido dejar este mismo nombre para
el informe (son objetos distintos aunque se llamen igual).

Figura 77: Resultado de la generacin del informe Pelis_Ethan_Hawke.

- 52 -

EI(MT)1002. Informtica Bsica - 1er curso.

Material de apoyo. Bases de datos con LibreOffice Base

El informe generado para nuestro ltimo ejemplo se ilustra en la Figura 77. Observa con detenimiento el formato del
informe y la disposicin de los diversos campos de informacin, relacionndola con las opciones indicadas al asistente.

- 53 -

También podría gustarte