Ejemplo de Normalización
MC Beatriz Beltrán Martínez
Benemérita Universidad Autónoma de
Puebla
Ejemplo
• Normalización con un ejemplo simplificado de una
base de datos para una pequeña biblioteca.
CodLibro
Titulo
Autor
Editorial IdLector NombreLector
FechaDev
1001
Variable
compleja
Murray Spiegel
McGraw
Hill
501
15/04/2005
1004
Visual
Basic 5
E. Petroustsos
Anaya
502
McGraw
Hill
503
Pérez Gómez,
Juan
Ríos Terán, Ana 17/04/2005
1005
Estadística Murray Spiegel
1006
Oracle Univ
ersity
Nancy
Greenberg y
Priya Nathan
Oracle
Corp.
504
García Roque,
20/04/2005
Luis
1007
Clipper 5.01
Ramalho
McGraw
Hill
501
Pérez Gómez,
Juan
MC Beatriz Beltrán Martínez
FCC - BUAP
Roca, René
Verano 2015
16/04/2005
18/04/2005
229
Primera forma normal
• Esta tabla no cumple 1NF: El autor es un campo no
tiene datos atómicos, por lo que se descompone en
2 tablas.
• La primera elimina el atributo no atómico:
Biblioteca
CodLibro
1001
Titulo
Editorial
IdLector
Variable compleja McGraw Hill
501
NombreLector
FechaDev
Pérez Gómez, Juan 15/04/2005
1004
Visual Basic 5
Anaya
502
Ríos Terán, Ana
17/04/2005
1005
Estadística
McGraw Hill
503
Roca, René
16/04/2005
Oracle University Oracle Corp.
504
García Roque, Luis
20/04/2005
501
Pérez Gómez, Juan 18/04/2005
1006
1007
Clipper 5.01
MC Beatriz Beltrán Martínez
McGraw Hill
FCC - BUAP
Verano 2015
230
Primera forma normal
• La segunda se genera con la información eliminada
Autor
MC Beatriz Beltrán Martínez
IdAutor
Autor
CodLibro (FK)
801
Murray Spiegel
1001
802
E. Petroustsos
1004
803
Murray Spiegel
1005
804
Nancy Greenberg
1006
805
Priya Nathan
1006
806
Ramalho
1007
FCC - BUAP
Verano 2015
231
Segunda Forma Normal
• La primer tabla no cumple 2FN: Ya que hay
dependencias funcionales que no dependen de la
llave primaria, por lo cual se tiene las siguientes
tablas:
Libros
CodLibro
1001
Titulo
Editorial
Variable compleja McGraw Hill
Lectores
IdLector
NombreLector
1004
Visual Basic 5
Anaya
501
Pérez Gómez, Juan
1005
Estadística
McGraw Hill
502
Ríos Terán, Ana
Oracle University Oracle Corp.
503
Roca, René
504
García Roque, Luis
1006
1007
Clipper 5.01
MC Beatriz Beltrán Martínez
McGraw Hill
FCC - BUAP
Verano 2015
232
Segunda Forma Normal
• Se crea una nueva tabla de enlace con las dos
tablas anteriores, la tabla de autores queda igual:
Prestamo
Autor
CodLibro IdLector
FechaDev
(FK)
(FK)
IdAutor
Autor
CodLibro
(FK)
1001
501
15/04/2005
801
Murray Spiegel
1001
1004
502
17/04/2005
802
E. Petroustsos
1004
1005
503
16/04/2005
803
Murray Spiegel
1005
1006
504
20/04/2005
804
Nancy Greenberg
1006
1007
501
18/04/2005
805
Priya Nathan
1006
806
Ramalho
1007
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
233
Tercera forma normal
• Las tablas generadas se encuentran en 3FN, por lo
que las tablas no sufren cambios.
Lectores
Libros
IdLector
CodLibro Titulo Editorial
NombreLector
Prestamo
Autor
CodLibro (FK) IdLector (FK) FechaDev
IdAutor Autor CodLibro (FK)
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
234
Ejemplo de 1FN
• Informe de Notas:
Notas
IdEstud
Nombre
Promedio
IdClase
01234
Huerta, J.
8.8
FIS, QUIM, MUS
22346
Ferrero, A.
10.0
FIS, ARTE
11349
Soriano, P
9.6
QUIM
08349
Clemente, C.
8.6
MUS, ARTE
03472
Pérez, R.
7.9
ARTE, FIS
33461
Vázquez, H.
9.0
ARTE
64596
Hernández, Z
8.9
QUIM, ARTE
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
235
Ejemplo de 1FN
• Resultado:
Alumnos
Materias
IdEstud
IdClase
01234
FIS
01234
QUIM
01234
MUS
IdEstud
Nombre
Promedio
22346
FIS
01234
Huerta, J.
8.8
22346
ARTE
22346
Ferrero, A.
10.0
11349
QUIM
11349
Soriano, P
9.6
08349
MUS
08349
Clemente, C.
8.6
08349
ARTE
03472
Pérez, R.
7.9
03472
ARTE
33461
Vázquez, H.
9.0
03472
FIS
64596
Hernández, Z
8.9
33461
ARTE
64596
QUIM
64596
ARTE
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
236
Ejemplo de 2FN
• Habilidades de empleados:
Empleado
Habilidad
Lugar actual de
trabajo
Jones
Mecanografía
114 Main Street
Jones
Taquigrafía
114 Main Street
Jones
Tallado
114 Main Street
Bravo
Limpieza ligera
73 Industrial Way
Ellis
Alquimia
73 Industrial Way
Ellis
Malabarismo
73 Industrial Way
Harrison
Limpieza ligera
73 Industrial Way
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
237
Ejemplo de 2FN
• Resultado:
Empleado (FK)
Empleado
Lugar actual de
trabajo
Habilidad
Jones
Mecanografía
Jones
Taquigrafía
Jones
114 Main Street
Jones
Tallado
Bravo
73 Industrial Way
Bravo
Limpieza ligera
Ellis
73 Industrial Way
Ellis
Alquimia
Harrison
73 Industrial Way
Ellis
Malabarismo
Harrison
Limpieza ligera
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
238
Ejemplo de Factura
Centro Integral de Cómputo Ellis
Factura
No. 5000488
Nombre del cliente: José Nolasco Pérez
RFC: NOPJ800320MG1
Dirección: 4 oriente 206 Centro
Fecha: 06/11/2014
Ciudad: Puebla, Pue.
Teléfono: 2994789
Lista de Productos
Categoría
Código
Descripción
Memorias
51238
DIM PC133 256MB
$256.00
2
Monitor
68989
Samsung Viamaster 550
$2500.00
1
MotherBoard
589898
MSI KM266 ATA 550
$1200.00
1
Unidad
18888
CD-ROM LG 52X
$600.00
1
Periferico
898666
Teclado Genius PS2
$300.00
2
MC Beatriz Beltrán Martínez
FCC - BUAP
Valor Unit.
Verano 2015
Cantidad
239
Tabla
PK Num_Fact
Fecha_Fact
Nombre_Cli
RFC_Cli
Direc_Cli
Ciudad_Cli
Telf_Cli
Cod_Prod
Categoria
Descripcion
Valor_Unit
Cantidad
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
240
Centro Integral de Cómputo Ellis
Factura
No. 5000488
Nombre del cliente: José Pérez Nolasco
RFC: PENJ800320MG1
Dirección: 4 oriente 206 Centro
Fecha: 06/11/2014
Ciudad: Puebla, Pue.
Datos no repetidos
Teléfono: 2994789
Lista de Productos
Categoría
Código
Descripción
Valor Unit.
Cantidad
Memorias
51238
DIM PC133 256MB
$256.00
2
Monitor
68989
Samsung Viamaster 550
$2500.00
1
MotherBoard
589898
MSI KM266 ATA 550
$1200.00
1
Unidad
18888
CD-ROM LG 52X
$600.00
1
Periferico
898666
Teclado Genius PS2
$300.00
2
Datos repetidos
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
241
Primera forma normal
Grupo1
Num_Fact Fecha_Fact RFC_Cli Nombre_Cli Direc_Cli Ciudad_Cli Telf_Cli
Grupo2
Cod_Prod Categoria Descripcion Valor_Unit Cantidad Num_Fact (FK)
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
242
Segunda forma normal
Grupo2
Cod_Prod Categoria
Descripcion
Dependen de la llave primaria
Valor_Unit Cantidad Num_Fact (FK)
No dependen de la llave primaria,
inherentes a la venta, no al producto
Grupo2
Valor_Unit Cantidad Num_Fact (FK) Cod_Prod (FK)
Grupo3
Cod_Prod Categoria
MC Beatriz Beltrán Martínez
FCC - BUAP
Descripcion
Verano 2015
243
Tercera forma normal
Grupo1
Num_Fact Fecha_Fact RFC_Cli Nombre_Cli Direc_Cli Ciudad_Cli
Dependen de la llave
primaria
Telf_Cli
No dependen de la llave primaria
Grupo1
Num_Fact Fecha_Fact RFC_Cli (FK)
Grupo 4
RFC_Cli Nombre_Cli Direc_Cli Ciudad_Cli Telf_Cli
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
244
Diseño Completo
Factura
Num_Fact Fecha_Fact RFC_Cli (FK)
Cliente
RFC_Cli Nombre_Cli Direc_Cli Ciudad_Cli
Telf_Cli
Venta
Valor_Unit Cantidad Num_Fact (FK) Cod_Prod (FK)
Producto
Cod_Prod Categoria Descripcion
MC Beatriz Beltrán Martínez
FCC - BUAP
Verano 2015
245
Descargar

Ejemplo de Normalización - Beatriz Beltrán Martínez