Gbd5
Upcoming SlideShare
Loading in...5
×
 

Gbd5

on

  • 1,122 views

 

Statistics

Views

Total Views
1,122
Views on SlideShare
592
Embed Views
530

Actions

Likes
0
Downloads
35
Comments
0

1 Embed 530

http://www.cuscohosting.net 530

Accessibility

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Gbd5 Gbd5 Presentation Transcript

  • Base de datos (MySQL)
    Normalización
    (Diseño Lógico y Relacional)
    Ing. Linda Masias Morales
  • Es el proceso de organizar datos
    ¿Que es la normalización?
  • Normalización
    Incluye la creación de tablas y que establece relaciones entre aquellas tablas según reglas diseñadas para proteger los datos y hacer la base de datos que es más flexible al eliminar redundancia y dependencia incoherente.
  • Normalización
    Los datos redundantes desperdician espacio en disco y crean problemas de mantenimiento.
    Si es necesario cambiar datos que aparecen en más de un sitio, el cambio deberá ser exactamente igual en todos estos sitios.
    Por ejemplo: Un cambio de dirección de un cliente es mucho más fácil de implementar si los datos sólo se almacenan en la tabla Clientes y en ningún otro lugar de la base de datos.
  • Transformación de modelo conceptual a modelo lógico
    El proceso de normalización de bases de datos consiste en aplicar una serie de reglas a las relaciones obtenidas tras el paso del modelo entidad-relación.
    Cada entidad se transforma en una tabla y los atributos de dicha entidad en atributos de la tabla.
  • Transformación de modelo conceptual a modelo lógico
    Las relaciones de muchos a muchos se transforman en tablas cuya clave estará formada por la clave primaria de las entidades relacionadas.
    Las relaciones de uno a muchos propagan la clave principal de la entidad cuya cardinalidad es uno a la entidad de cardinalidad n.
  • Relaciones y llaves primarias vs cardinalidad
  • Uno a uno
    Automóvil (Placa, N° de serie, Modelo, Color)
    Tarjeta de circulación (N° de serie, Propietario, Tipo)
  • Uno a muchos
    Cliente (DNI, Nombre, Dirección)
    Cuenta (N° Cta, DNI, Tipo Cta, Saldo)
    Registro (N° Cta, Fecha)
  • Muchos a muchos
    Cliente (DNI, Nombre, Dirección)
    Producto (Código, Precio, Descripción)
    Compra (DNI, Código, Valor, Fecha)
  • Primera Forma Normal
    Eliminar grupos repetidos en tablas individuales.
    Identificar cada conjunto de datos relacionados mediante una clave principal.
    No utilizar varios campos en una única tabla para almacenar datos similares.
    Esta forma normal elimina los valores repetidos dentro de una BD.
  • Ejemplo primera forma normal:
    Digamos que queremos crear una tabla con la información de usuarios, y los datos a guardar son el nombre, la empresa, la dirección de la empresa y algún URL. En principio comenzarías definiendo la estructura de una tabla como esta:
    Usuario (Nombre, Empresa, DireccionEmpresa, url1, url2)
  • Ejemplo primera forma normal:
    Convertiremos a la primera forma normal teniendo en cuenta las instrucciones antes mencionadas. Observando los campos de la tabla si deseamos ingresar otro “url” tendríamos que añadir otra columna y esto implica demasiadas modificaciones en el programa.
    Usuario (IDusuario, Nombre, Empresa, DireccionEmpresa, url)
  • Segunda forma normal
    Crear tablas separadas para aquellos grupos de datos que se aplican a varios registros.
    Relacionar estas tablas mediante una clave externa.
  • Ejemplo segunda forma normal:
    Ahora teniendo en cuenta la tabla en la primera forma normal. Si observamos surgen otros problemas como por ejemplo la redundancia de los datos de ingreso con respecto a “Nombre”, “Empresa” y “DireccionEmpresa”, estos datos se duplican e inclusive puede ocasionar inconsistencias en la base de datos.
    Tomando en cuenta las reglas mostradas en la segunda forma normal se procederá con lo siguiente.
  • Ejemplo segunda forma normal:
    Usuario (IDusuario, Nombre, Empresa, DireccionEmpresa)
    Url (IDurl, IDusuario, url)
    Se ha divido el campo “Url”, esto ayudara que en el futuro se pueda añadir mayor cantidad datos.
  • Terceraformanormal
    Eliminar aquellos campos que no dependan fuertemente de la clave.
  • Ejemplo tercera forma normal
    Hemos creado tablas separadas donde la clave primaria de la tabla “Usuario” está relacionada con la clave foránea de la tabla “Url”.
    Tomando en cuenta las reglas mostradas en la tercera forma normal se procederá con lo siguiente.
  • Ejemplo tercera forma normal
    Usuario (IDusuario, Nombre, IDempresa)
    Empresa (IDempresa, Empresa, DireccionEmpresa)
  • Ejemplo tercera forma normal
    Url (IDurl, IDusuario, url)
  • Cuarta forma normal
    En las relaciones varios-con-varios, entidades independientes no pueden ser almacenadas en la misma tabla.
  • Ejemplo cuarta forma normal
    Observando la cardinalidad entre las diferentes tablas, observemos que la cardinalidad entre la tabla “Usuario” y “Url” es una relación de varios a varios, por ende faltaría una última modificación a las tablas ya normalizadas.
  • Ejemplo cuarta forma normal
    Usuario (IDusuario, Nombre, IDempresa)
    Empresa (IDempresa, Empresa, DireccionEmpresa)
  • Ejemplo cuarta forma normal
    Url (IDurl, url)
    UrlRelacion (IDurlRelacion, IDurl; IDusuario)