El Asistente para tablas
El Asistente para tablas de OpenOffice Base incluye multitud de tablas prediseñadas que podemos configurar y utilizar en tan sólo unos minutos. A continuación vamos a crear una tabla utilizando el asistente para tablas.
Actividad 6
- Abre la base de datos base2.odb y en el margen izquierdo selecciona Tablas. Después, en la sección Tareas, haz doble clic sobre la opción Usar el asistente para crear tabla. Observa el aspecto del primer paso en la figura 2.29.
Figura 2.29
- De las dos categorías disponibles, elegiremos Negocios para seguir esta actividad.
- A continuación, en la lista desplegable Tablas de muestra selecciona el modelo denominado Clientes.
- Dentro de la sección Campos disponibles encontrarás los campos predefinidos para este modelo. En este caso, nuestra intención es crear una tabla con los datos personales del profesorado, por lo que debemos elegir los campos siguientes: IDCliente, Nombre, Apellido, Dirección, Cuidad, EstadoOProv, CódPostal y Departamento. Haz doble clic en cada campo o utiliza el botón
para pasarlos todos. En este punto, el aspecto del cuadro de diálogo debe ser el que muestra la figura 2.30.
Figura 2.30
Si nos equivocamos al desplazar algún campo o la totalidad, podemos devolverlos a la ventana de origen haciendo clic en los botones .
- Podemos añadir campos procedentes de otros modelos de tablas. Basta con elegir otra opción en la lista Tablas de muestra y seleccionar los campos que deseemos. Cuando tengamos elegidos todos los campos que vayamos a utilizar pulsa el botón Siguiente.
- En el siguiente paso del asistente (figura 2.31), OpenOffice Base ofrece la posibilidad de modificar las propiedades de cada uno de los campos seleccionados e incluso añadir nuevos campos creados por nosotros mismos mediante en el botón
. Igualmente podemos eliminar alguno de los campos, seleccionándolo en primer lugar y pulsando a continuación el botón
. Aprovecha este paso del asistente para cambiar el nombre del campo EstadoOProv por simplemente Provincia y del mismo modo cambia IDCliente por IDProfesor conservando el resto de valores como vienen definidos en el modelo. En las propiedades del campo IDProfesor asignaremos Sí a la opción Valor automático. Por último, selecciona en el margen izquierdo el campo Departamento y en la opción Tipo de campo elige Integer[INTEGER], esto nos servirá para vincular el código del departamento al que pertenece cada profesor.
Figura 2.31
- Después de hacer clic en el botón Siguiente pasamos a la siguiente ventana del asistente. En ella deberemos establecer la clave principal de nuestra tabla y para ello tenemos tres posibilidades:
- Si elegimos Autovalor, Base añade un nuevo campo que actuará como clave y cuyo valor se incrementará automáticamente cada vez que incluyamos un nuevo registro.
- Otra posibilidad es elegir uno de los campos ya existentes en la tabla.
- Como última opción, nos queda elegir una combinación de campos que sirva para identificar de forma inequívoca cada uno de los registros de la tabla.
- En el ejemplo elegido tenemos un candidato perfecto para ser clave de la tabla, se trata del campo IDProfesor. Después de activar su propiedad Valor automático será el propio programa el que se encargue de añadir un nuevo “valor único” a este campo cada vez que se añada un registro a la tabla. Por lo tanto, selecciona la segunda de las opciones y en la lista desplegable Nombre del campo elige el campo IDProfesor, como puedes ver en la figura 2.32.
Activar la casilla de verificación Autovalor tiene el mismo efecto que utilizar la propiedad Valor automático de las propiedades del campo. En este caso aparece activada, dado que ya configuramos este aspecto en el paso anterior.
Figura 2.32
- Después de hacer clic en Siguiente llegamos a la última ventana del asistente donde debemos asignar un nombre a la tabla que, en este caso, llamaremos Profesores (figura 2.33). A partir de aquí disponemos de tres opciones: Insertar datos inmediatamente, Modificar el diseño de la tabla y Crear un formulario basado en esta tabla. Selecciona la segunda ellas para comprobar el trabajo realizado por el asistente.
Figura 2.33
Para seguir trabajando con el curso es necesario añadir algunas tablas más. Por este motivo la siguiente actividad será añadir todas las tablas que necesitamos. Muchas de estas tablas: Alumnos, Profesores, Cursos, Departamentos, Tutorías... nos pueden servir de base para desarrollar casi cualquier necesidad que se nos plantee en la actividad diaria del centro como por ejemplo: Gestionar los horarios de tutoría, controlar diferentes aspectos de nuestros alumnos como faltas de asistencia, notas, méritos…
Actividad 7
A continuación crearemos el resto de tablas necesarias para completar los ejemplos del resto del curso. En este caso podemos distinguir tres tipos de tablas:
- En primer lugar tenemos las tablas básicas que nos servirán para la mayoría de las bases de datos que necesitemos diseñar en nuestro centro. Nos referimos a: Cursos, Alumnos, Profesores y Departamento.
- También tenemos las tablas relacionadas con el ejemplo de la gestión de Actividades Deportivas. En este caso serían: Actividades, Calendario, Equipos y Participantes.
- Por último, planteemos las tablas necesarias para nuestro otro ejemplo, la gestión de tutorías de nuestro centro. En este caso, como tablas específicas serían necesarias: Tutorías y ProfesoresCursos.
No existe ningún problema en que todas estas tablas se encuentren dentro de un mismo archivo de bases de datos de OpenOffice, simplemente utilizaremos las que sean necesarias en cada caso.
Para la correcta realización de esta actividad hay que tener en cuenta lo siguiente:
- El Asistente no sería una buena opción para diseñar estas tablas por lo que recomendamos utilizar la vista diseño y todo lo aprendido hasta ahora.
- Debe tenerse cuidado a la hora de establecer las claves primarias de cada tabla, ya que una vez guardada la tabla no es posible modificarlas. El campo o campos clave que hay que establecer en cada caso se encuentran resaltados en negrita e identificados como tales en la Descripción.
- Recuerda evitar las tildes y los espacios en los nombres de los campos.
Empecemos con las tablas comunes, teniendo en cuenta que las tablas Alumnos y Profesores ya se han creado en actividades anteriores.
Tabla Cursos
Nombre del campo |
Tipo de dato |
Propiedades |
Descripción |
IdCurso |
Integer [INTEGER] |
Valor automático a “Sí” |
Identificación para cada curso (CAMPO CLAVE) |
Curso |
Texto [VARCHAR] |
Por defecto |
Nombre del curso, 1B, 2C, 3A,… |
Tabla Departamentos
Nombre del campo |
Tipo de dato |
Propiedades |
Descripción |
IdDepartamento |
Integer [INTEGER] |
Por defecto |
Código del departamento (CAMPO CLAVE) |
Nombre |
Texto [VARCHAR] |
Por defecto |
Denominación del departamento. |
Ahora crearemos las tablas vinculadas al ejemplo de Actividades Deportivas.
Tabla Actividades
Nombre del campo |
Tipo de dato |
Propiedades |
Descripción |
IdActividad |
Integer [INTEGER] |
Valor automático a “Sí” |
Identificación para cada actividad (CAMPO CLAVE) |
Actividad |
Texto [VARCHAR] |
Por defecto |
Nombre de la actividad |
Tabla Equipos
Nombre del campo |
Tipo de dato |
Propiedades |
Descripción |
IdEquipo |
Integer [INTEGER] |
Valor automático a “Sí” |
Identificación para cada equipo (CAMPO CLAVE) |
Equipo |
Texto [VARCHAR] |
Por defecto |
Nombre del equipo |
Tabla Calendario
(Ten en cuenta que la clave de esta tabla está formada por cuatro campos.)
Nombre del campo |
Tipo de dato |
Propiedades |
Descripción |
Jornada |
Integer [INTEGER] |
Identificación para Jornada. |
|
Actividad |
Integer [INTEGER] |
Por defecto |
Identificativo correspondiente a la actividad y que se relaciona con la tabla Actividades. (CAMPO CLAVE) |
Fecha |
Fecha [DATE] |
Por defecto |
Fecha en la que se celebra el encuentro. (CAMPO CLAVE) |
Hora |
Hora [TIME] |
Por defecto |
Hora a la que se celebra el encuentro. (CAMPO CLAVE) |
Lugar |
Texto [VARCHAR] |
Por defecto |
Si el centro dispone de más de una pista deportiva, este campo guarda el lugar donde se celebra el encuentro. (CAMPO CLAVE) |
EquipoA |
Integer [INTEGER] |
Campo requerido |
Identificativo del primer equipo. |
EquipoB |
Integer [INTEGER] |
Campo requerido |
Identificativo del segundo equipo. |
ResultadoEquipoA |
Integer [INTEGER] |
Por defecto |
Guarda los tantos anotados por el EquipoA. |
ResultadoEquipoB |
Integer [INTEGER] |
Por defecto |
Guarda los tantos anotados por el EquipoB. |
*** La clave de esta última tabla está formada por los campos Actividad, Fecha, Hora y Lugar.
Tabla Participantes
Nombre del campo |
Tipo de dato |
Propiedades |
Descripción |
Alumno |
Integer [INTEGER] |
Por defecto |
Código de alumno. (CAMPO CLAVE) |
ParticipanteEquipo |
Integer [INTEGER] |
Por defecto |
Código del equipo. (CAMPO CLAVE) |
ParticipanteActividad |
Integer [INTEGER] |
Por defecto |
Código de la actividad. (CAMPO CLAVE) |
En la tabla “Participantes” necesitamos utilizar los tres campos disponibles para componer la clave única. Además, teniendo en cuenta que esta tabla es una de las más importantes de nuestro ejemplo estudiemos mejor el sentido de cada uno de sus campos:
Alumno |
Hace referencia la código de expediente del alumnos, con este dato obtendremos después el resto de información necesaria para identificar el alumno. |
ParticipanteEquipo |
Código del equipo del que forma parte el alumno. Por ejemplo, el equipo “LocosDelBalón” tiene asociado el código 0, pues bien, este será el dato que necesitamos para completar esta tabla. |
ParticipanteActividad |
De nuevo utilizamos un código, pero esta vez corresponde a la actividad en la que participa el equipo: “Fútbol”, “Baloncesto”… |
En cualquier caso, para poder introducir datos en la tabla Participantes, es necesario crear previamente las tablas implicadas. Una de ellas, “Alumnos”, ya forma parte de nuestra base de datos pero “Equipos” y “Actividades” aún no.
Por último, diseñaremos las tablas para trabajar con las propuestas relacionadas con el ejemplo de gestión de tutorías. La tabla “Tutorías” y “Profesores” nos permitirá añadir más variedad a los ejemplos utilizados durante el curso. Más concretamente la tabla “Tutorías” nos permitirá disponer de todos los horarios de tutorías de los profesores del centro.
Tabla Tutorías
Nombre del campo |
Tipo de dato |
Propiedades |
Descripción |
IdTutoria |
Integer [INTEGER] |
Valor automático a “Sí” |
(CAMPO CLAVE) |
Profesor |
Integer [INTEGER] |
Por defecto |
Código del profesor. |
Curso |
Integer [INTEGER] |
Por defecto |
Código del curso asociado a la tutoría (1B, 1C, 2A...). |
DiaSemana |
Texto [VARCHAR] |
Por defecto |
Lunes, Martes, Miércoles… |
HoraTutoria |
Hora [TIME] |
Por defecto |
Hora disponible para la tutoría. |
Tabla ProfesoresCursos
Nombre del campo |
Tipo de dato |
Propiedades |
Descripción |
Profesor |
Integer [INTEGER] |
Por defecto |
Código del profesor. (CAMPO CLAVE) |
Curso |
Integer [INTEGER] |
Por defecto |
Código del curso asociado al profesor (1B, 1C, 2A...). (CAMPO CLAVE) |
Tutor |
Sí/No [BOOLEAN] |
Valor predeterminado, configurar a “No”. |
Si es tutor del curso el campo estará a “Sí” |
La tabla “ProfesoresCursos” nos permitirá identificar de forma precisa los grupos (cursos) a los que imparte clase cada profesor. Además con el campo “Tutor” sabremos qué curso está directamente tutelado por el profesor.