diseño de base de datos

4
Diseño de base de datos El proceso de diseño de una base de datos se guía por algunos principios. El primero de ellos es que se debe evitar la información duplicada o, lo que es lo mismo, los datos redundantes, porque malgastan el espacio y aumentan la probabilidad de que se produzcan errores e incoherencias. El segundo principio es que es importante que la información sea correcta y completa. Si la base de datos contiene información incorrecta, los informes que recogen información de la base de datos contendrán también información incorrecta y, por tanto, las decisiones que tome a partir de esos informes estarán mal fundamentadas. Un buen diseño de base de datos es, por tanto, aquél que: Divide la información en tablas basadas en temas para reducir los datos redundantes. Proporciona a Access la información necesaria para reunir la información de las tablas cuando así se precise. Ayuda a garantizar la exactitud e integridad de la información. Satisface las necesidades de procesamiento de los datos y de generación de informes. El proceso de diseño consta de los pasos siguientes: Determinar la finalidad de la base de datos: Esto le ayudará a estar preparado para los demás pasos. Buscar y organizar la información necesaria Reúna todos los tipos de información que desee registrar en la base de datos, como los nombres de productos o los números de pedidos. Dividir la información en tablas Divida los elementos de información en entidades o temas principales, como Productos o Pedidos. Cada tema pasará a ser una tabla. Convertir los elementos de información en columnas Decida qué información desea almacenar en cada tabla. Cada elemento se convertirá en un campo y se mostrará como una columna en la tabla. Por ejemplo, una tabla Empleados podría incluir campos como Apellido y Fecha de contratación. Especificar claves principales Elija la clave principal de cada tabla. La clave principal es una columna que se utiliza para identificar inequívocamente cada fila, como Id. de producto o Id. de pedido. Definir relaciones entre las tablas

Upload: deymar

Post on 17-Sep-2015

212 views

Category:

Documents


0 download

TRANSCRIPT

Diseo de base de datosEl proceso de diseo de una base de datos se gua por algunos principios. El primero de ellos es que se debe evitar la informacin duplicada o, lo que es lo mismo, los datos redundantes, porque malgastan el espacio y aumentan la probabilidad de que se produzcan errores e incoherencias. El segundo principio es que es importante que la informacin sea correcta y completa. Si la base de datos contiene informacin incorrecta, los informes que recogen informacin de la base de datos contendrn tambin informacin incorrecta y, por tanto, las decisiones que tome a partir de esos informes estarn mal fundamentadas.

Un buen diseo de base de datos es, por tanto, aqul que: Divide la informacin en tablas basadas en temas para reducir los datos redundantes. Proporciona a Access la informacin necesaria para reunir la informacin de las tablas cuando as se precise. Ayuda a garantizar la exactitud e integridad de la informacin. Satisface las necesidades de procesamiento de los datos y de generacin de informes.El proceso de diseo consta de los pasos siguientes: Determinar la finalidad de la base de datos: Esto le ayudar a estar preparado para los dems pasos. Buscar y organizar la informacin necesariaRena todos los tipos de informacin que desee registrar en la base de datos, como los nombres de productos o los nmeros de pedidos. Dividir la informacin en tablasDivida los elementos de informacin en entidades o temas principales, como Productos o Pedidos. Cada tema pasar a ser una tabla. Convertir los elementos de informacin en columnasDecida qu informacin desea almacenar en cada tabla. Cada elemento se convertir en un campo y se mostrar como una columna en la tabla. Por ejemplo, una tabla Empleados podra incluir campos como Apellido y Fecha de contratacin. Especificar claves principalesElija la clave principal de cada tabla. La clave principal es una columna que se utiliza para identificar inequvocamente cada fila, como Id. de producto o Id. de pedido. Definir relaciones entre las tablasExamine cada tabla y decida cmo se relacionan los datos de una tabla con las dems tablas. Agregue campos a las tablas o cree nuevas tablas para clarificar las relaciones segn sea necesario. Ajustar el diseoAnalice el diseo para detectar errores. Cree las tablas y agregue algunos registros con datos de ejemplo. Compruebe si puede obtener los resultados previstos de las tablas. Realice los ajustes necesarios en el diseo. Aplicar las reglas de normalizacinAplique reglas de normalizacin de los datos para comprobar si las tablas estn estructuradas correctamente. Realice los ajustes necesarios en las tablas.

Normalizacin Las reglas de normalizacin sirven para comprobar si las tablas estn estructuradas correctamente. La normalizacin es ms til una vez representados todos los elementos de informacin y despus de haber definido un diseo preliminar. La idea es asegurarse de que se han dividido los elementos de informacin en las tablas adecuadas. Lo que la normalizacin no puede hacer es garantizar que se dispone de los elementos de datos correctos para empezar a trabajar. Las reglas se aplican consecutivamente en cada paso para garantizar que el diseo adopta lo que se conoce como "forma normal". Objetivos Eliminar la informacin duplicada de las tablas, evitar la redundancia de los datos. Adaptar los cambios futuros en la estructura de las tablas, evitar problemas de actualizacin de los datos en las tablas. Minimizar el impacto del cambio estructural en lo que respecta a las aplicaciones de los usuarios que acceden a los datos, proteger la integridad de los datos. Pasos Primera forma normal: La primera forma normal establece que en cada interseccin de fila y columna de la tabla existe un valor y nunca una lista de valores.

Segunda forma normal: La segunda forma normal exige que cada columna que no sea clave dependa por completo de toda la clave principal y no slo de parte de la clave. Esta regla se aplica cuando existe una clave principal formada por varias columnas. Suponga, por ejemplo, que existe una tabla con las siguientes columnas, de las cuales Id. de pedido e Id. de producto forman la clave principal: Id. de pedido (clave principal) Id. de producto (clave principal) Nombre de producto Este diseo infringe los requisitos de la segunda forma normal, porque Nombre de producto depende de Id. de producto, pero no de Id. de pedido, por lo que no depende de toda la clave principal. Debe quitar Nombre de producto de la tabla, ya que pertenece a una tabla diferente (a la tabla Productos).

Tercera forma normal: La tercera forma normal exige no slo que cada columna que no sea clave dependa de toda la clave principal, sino tambin que las columnas que no sean clave sean independientes unas de otras. O dicho de otra forma: cada columna que no sea clave debe depender de la clave principal y nada ms que de la clave principal. Por ejemplo, considere una tabla con las siguientes columnas: IdProducto (clave principal) Nombre PrecioVenta

Descuento Suponga que la columna Descuento depende del PrecioVenta sugerido. Esta tabla infringe los requisitos de la tercera forma normal porque una columna que no es clave, la columna Descuento, depende de otra columna que no es clave, la columna PrecioVenta. La independencia de las columnas implica que debe poder cambiar cualquier columna que no sea clave sin que ninguna otra columna resulte afectada. Si cambia un valor en el campo PrecioVenta, la columna Descuento cambiara en consecuencia e infringira esa regla. En este caso, la columna Descuento debe moverse a otra tabla cuya clave sea PrecioVenta.

Recomendaciones.El ltimo paso del diseo de la base de datos es adoptar determinadas convenciones de nombres. Aunque MySQL es muy flexible en cuanto a la forma de asignar nombre a las bases de datos, tablas y columnas, he aqu algunas reglas que es conveniente observar: Utilizar caracteres alfanumricos. Limitar los nombres a menos de 64 caracteres (es una restriccin de MySQL). Utilizar el guin bajo (_) para separar palabras. Utilizar palabras en minsculas (esto es ms una preferenciapersonalque una regla). Los nombres de las tablas deberan ir en plural y los nombres de las columnas en singular (es igual una preferencia personal). Utilizar las letras ID en las columnas de clave primaria y fornea. En una tabla, colocar primero la clave primaria seguida de las claves forneas. Los nombres de los campos deben ser descriptivos de su contenido. Los nombres de los campos deben ser unvocos entre tablas, excepcin hecha de las claves.Los puntos anteriores corresponden muchos de ellos a preferencias personales, ms que a reglas que debamos de cumplir, y en consecuencia muchos de ellos pueden ser pasados por alto, sin embargo, lo ms importante es que lanomenclaturautilizada en nuestras bases de datos sea coherente y consistente con el fin de minimizar la posibilidad de errores al momento de crear una aplicacin de bases de datos.