normalización

48
Normalización Base de Datos I

Upload: mercia

Post on 10-Jan-2016

62 views

Category:

Documents


0 download

DESCRIPTION

Normalización. Base de Datos I. Normalización. Definición: La normalización es un proceso en el cual se va comprobando el cumplimiento de una serie de reglas, que sirven para ayudar eliminar redundancias e inconsistencias en una base de datos. Normalización. Normalización. Normalización. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Normalización

Normalización

Base de Datos I

Page 2: Normalización

2

Normalización

• Definición:

La normalización es un proceso en el cual se va comprobando el cumplimiento de una serie de reglas, que sirven para ayudar eliminar redundancias e inconsistencias en una base de datos.

Page 3: Normalización

3

Normalización

1FN

2FN

3FN

BCNF

4FN

5FN

Page 4: Normalización

4

Normalización

1FN

Page 5: Normalización

5

Normalización

• Formas Normales:

Una tabla está en Primera Forma Normal (1FN) si sus atributos contienen valores atómicos.

Page 6: Normalización

6

Normalización

• Formas Normales:

Una tabla está en Primera Forma Normal (1FN) si sus atributos contienen valores atómicos.

“Una relación en la que la intersección de toda fila y columna contiene un valor y solo un valor”

Page 7: Normalización

7

Normalización

• Ejemplo

#

Page 8: Normalización

8

Normalización

• Primera Forma Normal (1FN):

##

#

Page 9: Normalización

9

Normalización

• Primera Forma Normal (1FN):

# #

Page 10: Normalización

10

Normalización

• Ejercicio: Aplique la primera forma normal a la siguiente tabla:

1. Persona (#CURP, nombre, edad, fecha de nacimiento, teléfonos)

2. Cliente (#Num_cliente,direcciones_de_envio, saldo, límite de crédito)

Page 11: Normalización

11

Dependencia funcional de datos

Es decir, cuando dos o más filas tienen el mismo valor de A, tienen también el mismo valor de B.

Dependencias funcionales

A B

Dependencia funcional de datosDescribe una relación entre atributos de una

tabla.“Si A y B son atributos de una tabla, B será

funcionalmente dependiente de A. Si cada valor de A está asociado con exactamente un valor de B”

determinante dependiente

11B depende funcionalmente de A

Page 12: Normalización

12

Dependencia funcional de datosEjemplo:

Dependencias funcionales

12

No. Trabajador Nombre Tipo de

empleado Salario Sucursal

SL21 Juan Director 24000 B005

SG37 Ana Asistente 9000 B003

SG14 David Supervisor 18000 B003

SA9 María Asistente 9000 B007

SG5 Susana Director 24000 B003

SL41 Julia Asistente 9000 B005

TRABAJADORES

Page 13: Normalización

13

Dependencia funcional de datosEjercicio:

Dependencias funcionales

13

Clave libro

Nombre libro Autor Editorial Año

1022 Sistemas de bases de datos Thomas M. Addison Wesley 2006

1022 Sistemas de bases de datos

Carolyn E. Addison Wesley 2006

2893 Fundamentos de Bases de datos Silberschatz. Mc Graw Hill 2010

2893 Fundamentos de Bases de datos Korth. Mc Graw Hill 2010

2893 Fundamentos de Bases de datos Sudarshan. Mc Graw Hill 2010

LIBROS

Page 14: Normalización

14

Dependencia funcional completa

Indica que si A y B son atributos de una tabla, B depende funcionalmente de A pero no de ningún subconjunto de A.

Dependencias funcionales

14

Page 15: Normalización

15

Dependencia funcional completaEjemplo 1

Dependencias funcionales

15

Matrícula Código curso Nombre Apellido Calificación

1256 34 Pedro Valiente 9

1256 25 Pedro Valiente 8

5776 34 Ana Fernández 6

3491 25 Sara González 7

3491 34 Sara González 6

Page 16: Normalización

Dependencia funcional transitiva

Se produce cuando tenemos tres conjuntos de atributos X, Y y Z.

Y depende funcionalmente de X (X→Y),

Z depende funcionalmente de Y (Y→Z).

Además X no depende funcionalmente de Y.

Entonces ocurre que X produce una dependencia funcional transitiva sobre Z.

Esto se denota como:

(X → Z)

Dependencias funcionales

Page 17: Normalización

17

Normalización

1FN

2FN

Page 18: Normalización

18

Normalización

Segunda Forma Normal (2FN)

Ocurre si una tabla está en primera forma normal y además cada atributo que no sea clave, depende de forma funcional completa respecto de cualquiera de las claves.

Page 19: Normalización

19

Normalización

Segunda Forma Normal (2FN)Ejemplo:

Matrícula Código curso Nombre Apellido Calificación

1256 34 Pedro Valiente 9

1256 25 Pedro Valiente 8

5776 34 Ana Fernández 6

3491 25 Sara González 7

3491 34 Sara González 6

Page 20: Normalización

20

Normalización

Segunda Forma Normal (2FN)Solución:

Matrícula Nombre Apellido

1256 Pedro Valiente

5776 Ana Fernández

3491 Sara González

Matrícula Código curso Calificación

1256 34 9

1256 25 8

5776 34 6

3491 25 7

3491 34 6

Page 21: Normalización

21

Normalización

Segunda Forma Normal (2FN)Ejercicio:

No. vendedor

Nombre vendedor

Numero cliente

NombreCliente Valor de venta

1022 Mariana 1840 Melisa 13540

1022 Mariana 1834 Álvaro 10600

1022 Mariana 1856 Victoria 9700

2893 Salvador 1865 Francisco 68400

2893 Salvador 1890 Enrique 34600

2785 Adrian 1864 25000 25000

2785 Adrian 1823 Alma 35008

Page 22: Normalización

22

Normalización

1FN

3FN

Page 23: Normalización

23

Normalización

Tercera Forma Normal (3FN)

Ocurre cuando una tabla está en 2FN y además ningún atributo que no sea clave depende transitivamente de las claves de la tabla. Es decir no ocurre cuando algún atributo depende funcionalmente de atributos que no son clave.

Page 24: Normalización

24

Normalización

Tercera Forma Normal (3FN)

DNI Nombre Apellido Cod. Provincia Provincia

12121349A Salvador Velasco 34 Palencia

12121349B Pedro Valiente 34 Palencia

3457775G Ana Fernández 47 Valladolid

5674378J Sara Crespo 47 Valladolid

3456858S Marina Serrat 08 Barcelona

Alumnos

Page 25: Normalización

25

Normalización

Tercera Forma Normal (3FN)Solución:

Alumnos(#DNI, Nombre, Apellido1, Cod_Provincia)

Provincia(#Cod_Provincia, Provincia)

Page 26: Normalización

26

Normalización

Tercera Forma Normal (3FN)

Solución:

DNI Ciudad País Edad

1 Oaxaca México 34

2 Oaxaca México 25

3 Puebla México 19

4 Miami EU 22

5 Miami EU 30

SOCIO

El campo no principal País depende transitivamente de la clave DNI (a través del campo Ciudad).

Page 27: Normalización

27

Normalización

Ejercicio 1: Normalizar hasta 3FN

_______ _______

Page 28: Normalización

28

Normalización

Ejercicio 2: Normalizar hasta 3FN

_______ ___________

Page 29: Normalización

29

Normalización

Ejercicio 3: Normalizar hasta 3FN

__________ __________

Page 30: Normalización

30

Normalización

1FN

3FN

BCNF

Page 31: Normalización

31

Normalización

Forma normal de Boyce-Codd (FNBC)

Una relación está en Formal Normal de Boyce-Codd (BCNF) si y sólo si cada determinante (en la relación) es una clave candidata.

Page 32: Normalización

32

Normalización

Una forma sencilla de comprobar si una relación se encuentra en FNBC consiste en comprobar, además de que esté en 3FN, lo siguiente:

1. Si no existen claves candidatas compuestas (con varios atributos), está en FNBC.

2. Si existen varias claves candidatas compuestas y éstas tienen un elemento común, no está en FNBC.

Page 33: Normalización

33

Normalización

Forma normal de Boyce-Codd (FNBC)

Ejemplo:

DNI Asignatura Tutor

1 Lenguaje Eva

1 Matemáticas Andrés

3 Lenguaje Eva

2 Matemáticas Guillermo

2 Lenguaje Julia

4 Matemáticas Guillermo

TUTORIAS

Page 34: Normalización

34

Normalización

Forma normal de Boyce-Codd (FNBC)

Solución:

Tutorías(#DNI,#Tutor)

AsignaturasTutor(#Tutor, Asignatura)

Page 35: Normalización

35

Normalización

Dependencia multivaluada

Una dependencia multivaluada representa una dependencia entre atributos( por ejemplo A, B y C) en una relación de modo que para cada valor de A hay un conjunto de valores de B y un conjunto de valores de C; sin embargo, los conjuntos de valores de B y C son independientes entre si.

Page 36: Normalización

36

Normalización

Dependencia multivaluada

A - >> B A B CA1 B1 C1A1 B2 C1A1 B1 C2A1 B2 C2

Page 37: Normalización

37

Normalización

Dependencia multivaluada

Page 38: Normalización

38

Normalización

Dependencia multivaluada No Curso Profesor Material

17 Eva 1

17 Eva 2

17 Julia 1

17 Julia 2

25 Eva 1

25 Eva 2

25 Eva 3

Los materiales del curso dependen del curso y no del profesor en una dependencia multivaluada (no hay dependencia funcional ya que los posibles valores son varios). Para el par Nº de curso y profesor podemos saber los materiales; pero lo sabemos por el curso y no por el profesor.

Page 39: Normalización

39

Normalización

1FN

BCNF

4FN

Page 40: Normalización

40

Normalización

Cuarta Forma Normal(4FN)

Una relación que ésta en forma normal de Boyce-Codd y no contiene dependencias multivaluadas no triviales.

Una dependencia multivaluada A->>B o A->->B es trivial si B es un subconjunto de A o si A U B =R

Page 41: Normalización

41

Normalización

Cuarta Forma Normal(4FN)

Ejemplo 1:

No Curso Profesor Material

17 Eva 1

17 Eva 2

17 Julia 1

17 Julia 2

25 Eva 1

25 Eva 2

25 Eva 3

Page 42: Normalización

42

Normalización

Cuarta Forma Normal(4FN)

Ejemplo 1:

No Curso Profesor

17 Eva

17 Julia

25 Eva

No Curso Material

17 1

17 2

25 1

25 2

25 3

Page 43: Normalización

43

Normalización

Cuarta Forma Normal(4FN)

Ejemplo 2:Transporte

Conductor Tipo Vehículo Tipo Carga

Juan Camioneta Perecederos

Marcos Camioneta Perecederos

Juan Camioneta Muebles

Marcos Camioneta Muebles

Juan Camión Mudanza

Marcos Camión Mudanza

En este caso hay dependencias funcionales multivaluadas, ya que algunos atributos que forman la clave dependen de otro atributo que también la forman.

Page 44: Normalización

44

Normalización

Cuarta Forma Normal(4FN)

Ejemplo 2:

Tabla en cuarta forma normal

Tipo Vehículo Tipo Carga

Camioneta Perecederos

Camioneta Muebles

Camión Mudanza

Tabla en cuarta forma normal

Conductor Tipo Vehículo

Juan Camioneta

Marcos Camioneta

Juan Camión

Marcos Camión

Page 45: Normalización

45

Normalización

Cuarta Forma Normal(4FN)

Ejercicio 1:

Page 46: Normalización

46

Normalización

1FN

BCNF

4FN

5FN

Page 47: Normalización

47

Normalización

Quinta Forma Normal(5FN)

Ocurre cuando está en 4FN y además no hay proyecciones que combinadas formen la tabla original. Es la más compleja y polémica de todas. Polémica pues no está claro en muchas ocasiones que sea una solución mejor sacar las proyecciones de la tabla. Fue definida también Fagin.

Page 48: Normalización

GRACIAS