domingo, 19 de septiembre de 2010

Respuesta a algunas preguntas planteadas



Vamos a construir la base de datos de ejemplo (Biblioteca) a partir de las siguientes tablas de Excel:



El modelo E-R resultante es:


Vea cuales campos se utilizaron como claves principales en las diferentes tablas, e intente analizar porque se tomaron esos campos y no otros.

La integridad referencial es un sistema de reglas que utiliza Microsoft Access para garantizar que las relaciones entre los registros de tablas relacionadas son válidas y que no se eliminan ni modifican accidentalmente datos relacionados. En esta base de datos se utilizó integridad referencial en las relaciones (observe en la figura que esta claramente marcada la integridad referencial).

Por comodidad todos los campos numéricos se definieron como entero largo (Access por default los asigna como reales de precisión doble [DOUBLE]), por lo que es conveniente cambiarlos a entero largo antes de vincular las tablas.

A todos los campos tipo texto Access por default les asigna un largo de 255 caracteres. Reduzca ese largo a un valor mas real, por ejemplo los campos referentes a nombre y apellidos ajústelos a 15 caracteres.
Anote la descripción de todos aquellos campos que pudieran prestarse a confusión si no establece claramente esta propiedad.

Despues de construir las relaciones entre tablas, al examinar cada tabla y su subhoja de datos (en caso necesario modificar cual subhoja se despliega), podemos encontrar respuesta a algunas de las preguntas planteadas inicialmente.

La figura muestra como insertar una sub hoja de datos a la tabla Usuarios, que muestre información de la tabla Prestamos.


Al ver la sub hoja de datos de la  tabla Usuarios podemos ver si cierto  usuario debe libros. 

Al ver la sub hoja de datos de la  tabla Temas podemos ver que libros  hay de cierto Tema. 

Si vemos la tabla Prestamos y  filtramos por una celda en blanco en  el campo Devuelto, podemos saber que  usuarios deben libros y desde cuándo.  
Al ver la sub hoja de datos de la  tabla Libros podemos ver si existen varios ejemplares de un cierto libro. 
Al ver la sub hoja de datos de la  tabla Ejemplares podemos ver a  quienes se les ha prestado cada ejemplar y las fechas de préstamo y  devolución. 
Al ver la sub hoja de datos de la  tabla Autores podemos ver si hay  varios uno o varios libros de un  autor.

Queremos saber si existe en biblioteca cierto libro del que conocemos su ISBN (Elías Lara Flores isbn 968-24-5486-7 CONTABILIDAD PRIMER CURSO). Para ello en la tabla Libros, introducimos el ISBN en el recuadro de Búsqueda (Search) de la parte inferior.

De igual manera podemos buscar por el nombre del libro usando el recuadro de búsqueda.
Algunas otras de las preguntas podemos responderlas creando consultas simples. Pruebe con algunas consultas simples y elabore algunos formularios simples, que tomen datos de varias tablas.
Pero de momento podemos concentrarnos en ajustar algunas de las propiedades de las tablas, que es un tema con el que los alumnos usualmente batallan en los exámenes; por ejemplo en el examen podría solicitarles algo como lo siguiente:
En la tabla Usuarios hacer que el valor de Nombre1 y apellido Paterno sean requeridos.
Que apellido Paterno sea Indexado. (Para facilitar la búsqueda en listas muy largas)
Que el valor predeterminado de Ciudad sea Nuevo Laredo.
Que el campo Sancionado sea del tipo Si/No  y aparezca como casilla de Verificación.
Que la Fecha de nacimiento sea tal que la edad del usuario no sea menor de 17 años.
Que la máscara de entrada de Fecha de nacimiento sea 99/99/99 (para facilitar la introducción de fechas).
Que el formato de la Fecha de Nacimiento muestre tan solo el mes y año (ejem. enero 1992)
Que apellido Paterno se muestre en mayúsculas.
Que apellido Materno se muestre en minúsculas.
En Nombre1 utilizar la siguiente máscara de entrada >L<??????????????
Vea que ocurre cuando introduce un nombre todo en Mayúsculas o todo en Minúsculas.
En el campo Teléfono modificar las propiedades para que guarde telefonos incluyendo el código de área
Agregar en la tabla Usuarios un campo que guarde la foto del usuario.
Agregar en la tabla Usuarios un campo tipo lista con las diversas carreras de esta escuela
Agregar en la tabla Usuarios un campo que permita guardar comentarios extensos.
Agregar en la tabla Usuarios un campo llamado Documentos con un tipo de datos llamado Datos Adjuntos o Datos Anexos.[El tipo de datos Datos Adjuntos se utiliza para agregar a la base de datos un documento de Office (Word, Excel, Power Point, etc.).]`. Pruebe su  utilización agregando en un registro u documento de Word, en otro uno de Excel. en otro una presentación de Power Point, etc.
Manejar el e_mail como hipervínculo.
Mostrar en la tabla el número de teléfono separado con guiones (por ejemplo 7141516 mostrarlo como 7-14-15-16).
Hacer que IDusuario sea autonumérico.
En la tabla Libros, agregar un campo denominado Precio, con el precio del libro, mismo que se cobraría a un usuario en caso de extraviar el ejemplar que se le prestó. El formato de Precio debe ser moneda, y debe mostrar el símbolo de pesos y el valor con dos decimales.
Al igual que en Excel también podemos aplicar formatos personalizados, en el campo Precio prueba con el siguiente formato   $#.##[Verde];($0.00)[Rojo];"Cero";"Nulo"  para valores positivos, cero y negativos.
El precio del libro debe ser siempre positivo y mayor a $50. Agregar una regla de validación y un texto de validación.
En la tabla Libros el ISBN consta exactamente de 10 dígitos, agegar una regla de validación y un texto de validación  para reducir errores.
En la tabla Prestamos, queremos validar la fecha del prestamo (y la de devolución al año actual) >=#1/1/2010# Y <#1/1/2011# y mostrar un mensaje alusivo en caso de que el usuario se equivoque.
En la tabla Libros, en el campo ISBN pruebe la siguiente Máscara de entrada "ISBN  "9\-99999\-999\-9 e introduzca un registro con los datos de un libro real.
En la tabla Ejemplares agregar un campo que indique en que estado se encuentra el libro (Impecable, Bueno, Maltratado), empleando una lista desplegable.
Aunque los temas referentes a Consultas, Formularios e Informes solo los hemos visto de una manera muy somera (corresponden a las siguientes prácticas), facilmente podríamos utilizarlos para extraer más información de la base de datos y mejor presentada.

Por ejemplo para conocer el número de ejemplares en una misma consulta agrupamos las tablas Libros y Ejemplares y le indicamos a la consulta contar ejemplares

Para mostrar Autores y Libros, realizamos una consulta simple que muestre datos de ambas tablas
Para saber que libros se les prestaron a cada usuario manejamos una consulta que muestre información de las tablas Usuarios, Prestamos, Ejemplares y Libros.
Para conocer los Libros y sus Autores, construimos un Formulario con Subformulario a partir de la consulta respectiva.
Para conocer los libros que se le han prestado a un usuario, creamos un formulario a partir de la consulta de usuarios y préstamos (con un subformulario que muestre que ejemplares le han prestado).