Universidad Tecnológica de Hermosillo Modelo Educativo Basado en competencias Bases de Datos 2 Práctica 1. Diseño de una base de datos. A partir de los requerimientos recopilados se procede a diseñar la estructura de la base de datos donde se almacenará la información que manejará el sistema computacional. Se definen las tablas, sus campos (nombre, tipo y longitud), los índices de ordenamiento y las relaciones. Para aplicar correctamente la 1FN es necesario especificar, para cada dato independiente, un campo con un nombre, un tipo de dato y su longitud. En ambas tablas se especificó un campo con el nombre "credito", en la tabla "Clientes" es de tipo moneda y en la tabla "Facturas" de tipo lógico. Procedimiento de NORMALIZACIÓN. Para diseñar correctamente una base de datos se utiliza la metodología de normalización, la cual sugiere criterios en la construcción de una base de datos. Las tres primeras formas normales son las más utilizadas, aunque existen la cuarta, la quinta y la Boyce-Codd. El error se encuentra en el nombre asignado, ya que además de existir ambigüedad, el nombre no precisa el dato de la realidad que está representando. Para corregir el problema, el nombre del campo "credito" de la tabla "Clientes" se cambia por "limcredito" con el cual se precisa que almacenará el limite de crédito (en moneda) del cliente. Para el campo "credito" de "Facturas" se hace lo mismo, se renombra por "aCredito" con lo cual se precisa que la factura es a crédito si el campo tiene valor "Verdadero" o es venta de contado si su valor es "Falso". Así, el gerente puede saber cuales facturas son ventas a crédito y cuales de contado. La Primera Forma Normal (1FN) se refiere a identificar cada dato independiente y diseñar el campo para almacenarlo. Para cada campo se especifica el nombre, el tipo de dato y su longitud. El nombre del campo debe identificar de forma precisa el dato que representa, el tipo de dato del campo debe ser de la misma naturaleza del dato que representa y la longitud debe ser suficiente para almacenar todo el rango de valores posibles que puede tomar el dato que representa. Seguidamente, se deben agrupar los campos tomando en cuenta su similitud. La Segunda Forma Normal (2FN) consiste en separar los campos en tablas, asignar una clave de ordenamiento a cada tabla y verificar que todos los campos de la tabla dependan directamente de la clave. La clave permite identificar de manera única cada registro en la tabla y optimiza el proceso de búsqueda. La Tercera Forma Normal (3FN) elimina la redundancia de datos moviendo a una nueva tabla a aquél campo cuya información es repetitiva y asigna una clave corta para establecer una relación entre la tabla existente y la nueva. No todos los campos con información redundante se deben separar en otra tabla, antes de hacerlo se debe analizar el incremento en la complejidad de la base de datos y los costos de memoria y procesador. Ejemplos de errores en la normalización. Sea la siguiente base de datos. El gerente de una ferretería desea llevar un control sobre las ventas a crédito y un registro de las facturas que expide. Aparentemente, el problema se resuelve al definir como tablas las dos entidades solicitadas por el gerente. Sin embargo, este diagrama UML tiene graves faltas en su normalización. Otro error muy común que falta a la primera forma normal es la especificación de longitudes cortas a los campos. Esta base de datos podrá registrar hasta 99999 clientes, por tener la clave del cliente N(5). Así que al diseñar cada campo, se debe proyectar el crecimiento de la empresa y asignarle una longitud suficiente para almacenar todos los posibles valores. Para aplicar correctamente la 2FN es necesario separar los campos en tablas, una tabla para cada entidad. En la tabla "Facturas" existe el campo "prod" que contiene la descripción del producto vendido. Esto dice que "producto es una entidad" y es conveniente separarla en otra tabla. Se crea la tabla "Productos" que contiene dos campos: prod N(5) y producto C(30). Se mantiene el campo prod N(5) en la tabla "Facturas" para conservar la relación entre ambas tablas. Para aplicar correctamente la 3FN se elimina la redundancia en la tabla "Facturas". Si en una factura se venden 5 productos diferentes, la tabla contendrá cinco registros con el mismo número de folio, lo cual es una falta a la tercera forma normal por que existe repetición. Así que, los detalles de la factura se ponen en la tabla "Detalles" y por cada registro en la tabla de "Facturas" existirá un conjunto de registros en la tabla "Detalles". Universidad Tecnológica de Hermosillo Modelo Educativo Basado en competencias Práctica 2. Definición de un Diccionario de Datos. Bases de Datos 2 DICCIONARIO DE DATOS PARA LA BASE DE DATOS "VENTAS". Esta práctica presenta un ejemplo de un Diccionario de Datos para una base de datos donde se especifican las tablas, cada uno de los campos y la descripción exacta y precisa del nombre, su significado, el rango de valores y su conexión con otros elementos de la base dedatos, tales como referencias, índices y relaciones. Sea la siguiente base de datos VENTAS, especificada en términos de diagrama Entidad - Relación (E-R) bajo el modelo relacional. Cada campo está definido en términos de un nombre único en toda la base de datos, un tipo de dato y una longitud en unidades de letras o cifras. Sin embargo, la especificación del nombre, tipo y longitud para cada campo no es suficiente para conocer el significado (lo que representa de la realidad) y el rango de posibles valores que puede almacenar. Para lograr esto, es necesario especificar el DICCIONARIO DE DATOS, con el propósito de contar con una descripción más precisa de los datos de la realidad que almacena la base de datos y el rango de posibles valores que cada campo puede almacenar. El diccionario de datos de una base de datos es definido por el Diseñador de la Base de Datos. Para cada tabla en la base de datos se describe una serie de datos ordenados en columnas y renglones. En la primera columna se determina un número consecutivo de cada campo dentro de la tabla. En la segunda columna se presenta la descripción del campo en términos del Diagrama Entidad - Relación, que incluye el nombre del campo, su tipo y su longitud. En la tercera columna se registra una descripción detallada del campo respecto al dato de la realidad que representa, así como el rango de posibles valores que puede contener. El diseñador puede agregar columnas dependiendo de las necesidades de desarrollo del sistema informático. El Diccionario de Datos es utilizado por todos los integrantes del equipo de desarrollo del sistema informático: analistas, diseñadores, programadores y especialistas. Es constantemente consultado para rescatar el significado de cada uno de los campos y las validaciones que se le deben aplicar.