Las fases de diseño de una base de datos son:
- Analisis de requisitos
- Diseño conceptual
- Diseño lógico
- Diseño físico
- Implementación
- Carga
- Prueba y ajuste
- Documentación
En esta primera parte del curso nos estamos enfocando en los primeros tres puntos.
Dado que en esta semana habrá varios días sin clase, trabajaremos en nuestras casas con el análisis de una base de datos para la biblioteca escolar.
En el desarrollo de la base de datos para control de libros de una Biblioteca escolar, se requiere realizar lo siguiente:
ACTIVIDAD 1: A partir del siguiente enunciado, diseñar el modelo entidad-relación.En el desarrollo de la base de datos para control de libros de una Biblioteca escolar, se requiere realizar lo siguiente:
- Hacer el análisis y el diseño manual de la base de datos para el control de la biblioteca ,
- Elaborar el modelo relacional ,
- El diseño de las respectivas tablas,
- El diseño de los formularios,
- El diseño de las consultas,
- El diseño de los informes que se necesiten.
En la biblioteca de nuestra escuela se requiere una base de datos que permita llevar un control sistematizado de los libros en existencia. De cada libro se guarda el código del libro (IDlibro) , título, ISBN, editorial, número de páginas, etc. De cada autor se tiene el código identificador de autor (IDautor), el nombre y nacionalidad. Un autor puede escribir varios libros, y un libro puede ser escrito por varios autores. De un mismo libro pueden existir varios ejemplares en la biblioteca. Cada ejemplar tiene un código y una localización (las estanterías de la biblioteca tienen un lugar asignado dentro de la biblioteca y un número que las identifica). Un libro tiene muchos ejemplares y un ejemplar pertenece sólo a un libro.
Los usuarios de la biblioteca del centro también disponen de una credencial que les identifica en la biblioteca con la que pueden sacar en préstamo ejemplares de diversos libros. De cada usuario se guarda el código (IDusuario), nombre, dirección, teléfono, etc. Los ejemplares son prestados a los usuarios que lo requieren. Un usuario puede recibir prestados varios ejemplares. De cada préstamo se guarda la fecha de préstamo y la fecha de devolución.
Elaborar el modelo relacional. Diseñar las tablas en Access requeridas, realizar las relaciones oportunas entre tablas e insertar al menos diez registros en cada una de las tablas.
----------------------
ACTIVIDAD 2:
Proponga las consultas usuales que realizaría un usuario de la base de datos de la biblioteca escolar.
Por ejemplo:
¿Existe en la biblioteca el libro …? [por ejemplo: Primer Curso De Contabilidad, de Elías Lara Flores]
¿De dicho libro, cuántos ejemplares tienen en existencia?
¿Está disponible?
¿En qué anaquel lo encuentro?
¿Cuál es su fecha de publicación? [o bien ¿Cuál es la edición disponible?]
¿Qué otros libros tienen del mismo autor?
¿Qué libros ha solicitado un usuario (en qué fecha los recibió y en qué fecha los devolvió)?
¿Debe libros un usuario?
Mostrar los libros prestados y no devueltos, indicando el número de días transcurridos en orden decreciente
----------
ACTIVIDAD 3: Crear la base de datos requerida, con sus tablas y relaciones. Verificar si la estructura propuesta puede dar respuesta satisfactoria a las preguntas requeridas.
[Si no es así debemos modificar la base de datos (agregar o eliminar tablas y campos, cambiar algunos tipos de datos, modificar relaciones, etc.)]
Para esta actividad, por ejemplo realice lo siguiente:
Cree una base de datos en Access con el nombre de Biblioteca. Cree en ella la siguiente tabla con el nombre USUARIOS. La clave principal debe ser el campo que guarda el número de usuario (IDusuario). Esta tabla debe estar formada por los siguientes campos.
Campo | Tipo | Tamaño | Formato | Requerido | Otras |
---|---|---|---|---|---|
IDusuario | Auto numérico | ||||
Nombre1 | Texto | 10 | Si | ||
Nombre2 | Texto | 10 | |||
Paterno | Texto | 10 | Si | ||
Materno | Texto | 10 | |||
Dirección | Texto | 40 | Si | ||
Colonia | Texto | 20 | Si | ||
Ciudad | Texto | 20 | Si | Valor predeterminado: | |
Nuevo Laredo | |||||
Código postal | Texto | 5 | Si | Mascara de entrada | |
00 000 | |||||
Teléfono | Texto | 10 | Mascara de entrada | ||
(000) 00-00-000 | |||||
Celular | Texto | ||||
E_mail | Texto | ||||
Fecha de Nacimiento | Fecha | Fecha corta | Si | ||
Sancionado | Si/No | Si |
Cree una nueva tabla con el nombre AUTORES con la siguiente estructura. La clave principal debe ser el campo código de autor.
Campo | Tipo | Tamaño | Formato | Requerido | Otras |
---|---|---|---|---|---|
IDautor | Auto numérico | ||||
Nombre1 | Texto | 10 | Si | ||
Nombre2 | Texto | 10 | |||
Paterno | Texto | 10 | |||
Materno | Texto | 10 | |||
Nacionalidad | Texto | 20 |
Cree una nueva tabla con el nombre LIBROS con la siguiente estructura. La clave principal debe ser el campo “IDlibro”.
Campo | Tipo | Tamaño | Formato | Requerido | Otras |
---|---|---|---|---|---|
IDlibro | Auto numérico | ||||
ISBN | Texto | 10 | Si | Formato 00-000-0000-0 | |
IDTema | numero | entero | |||
Titulo | Texto | 50 | Si | ||
Editorial | Texto | 20 | Mayúsculas | ||
Idioma | Texto | 15 | Si | Valor predeterminado:Español | |
IDautor | Texto | 20 | Si | ||
Páginas | Numérico | entero | Si | Regla de validación: entre 1 y 2000 | |
Comentario | Memo |
Cree una nueva tabla llamada TEMAS que contenga los diversos temas de los libros.
Campo | Tipo | Tamaño | Formato | Requerido | Otras |
---|---|---|---|---|---|
IDtema | Auto numérico | ||||
Tema | Texto | 20 | Si | Descripción: Tema del libro |
Cree una nueva tabla llamada PRÉSTAMOS que deberá tener la siguiente estructura. La clave primaria es IDprestamo.
Campo | Tipo | Tamaño | Formato | Requerido | Otras |
---|---|---|---|---|---|
IDprestamo | Auto numérico | Entero largo | Si | ||
IDlibro | Entero largo | Si | |||
IDusuario | Entero largo | Si | |||
Prestado | Fecha | Fecha corta | Fecha corta | Si | |
Devuelto | Fecha | Fecha corta | Fecha corta | Si |
Abra la base de datos Biblioteca y cree las siguientes relaciones entre las diversas tablas, marcando las opciones de “Exigir integridad referencial”, “Actualizar registros en cascada” y “Eliminar en cascada los registros relacionados”.
Introduzca después 10 registros en cada una de las tablas. Para crear la tabla LIBROS utilice las referencias bibliográficas de las materias que estudia en el actual ciclo escolar.
Al introducir los datos de la tabla Libros, nos damos cuenta que hay libros con varios autores y la estructura propuesta solo permite registrar a un autor.
¿Qué ocurre si hay varios autores de un mismo libro? ¿Cómo podríamos buscar los libros de cierto autor en tal caso?
La relación 1 a 1 de Temas y Libros se puede hacer al relacionar el campo IDTema de ambas tablas, pero para relacionar un libro con varios autores (relación 1 a muchos), necesitamos una tabla adicional que se llame por ejemplo "AutoresPorLibro" y que tenga los siguientes campos:
Campo | Tipo | Tamaño | Formato | Requerido | Otras |
---|---|---|---|---|---|
IDlibro | Número entero | Si | |||
IDautor | Número entero | Si |
Luego relacionamos IDLibro con la tabla de Libros, y eso permitirá almacenar varios autores por cada libro.
Para poder visualizar los autores de cada libro, tenemos que crear un formulario principal que muestre los libros. Luego debemos hacer un subformulario que muestre autores por libro y agregarlo dentro del formulario principal de libros. De esa forma, al ver un libro veremos a todos sus autores relacionados
Otro error que podemos visualizar es que puede haber varios ejemplares de un mismo libro, por lo que requerimos otra tabla llamada Ejemplares.
Campo | Tipo | Tamaño | Formato | Requerido | Otras |
---|---|---|---|---|---|
IDejemplar | Número entero | Si | |||
IDlibro | Número entero | Si | |||
Ubicación | Texto | 20 | Si | Descripción:¿Dónde está localizado físicamente el ejemplar? |
El siguiente libro de Excel trae una propuesta de tablas de ejemplo, para empezar a trabajar con esta base de datos. Faltan algunos campos como son fecha de publicación y edición que ustedes pueden adicionar posteriormente. La lista de usuarios corresponde a los alumnos del grupo y en ella dirección, teléfono, celular, e_mail, etc. (y otros campos que aparecen en rojo para indicar que deben ser reemplazados por los reales) son datos que ustedes ya capturaron previamente.