Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
1
1
Andrés Moreno S.
FORMAS NORMALES
2
Diagramas de Dependencias Funcionales
{Rut} {Nombre, Apellido, Dirección,
Comuna}
RUT Nombre Apellido Dirección Comuna
1132 José Pérez Aponquindo 1200 Las Condes
2232 Andrés Smith Camino Alba 23 La Reina
3321 Felipe Soto Av La Dehesa 23 La Dehesa
Rut
Nombre
Apellido
Dirección
Comuna
3
Diagramas de Dependencias Funcionales
{Rut, Carrera} {Nombre, Apellido, Fecha
Ingreso}
RUT Nombre Apellido Fecha Ingreso Carrera
1132 José Pérez 1/01/2001 Ing Civil
2232 Andrés Smith 1/01/2002 Derecho
3321 Felipe Soto 1/01/2004 Medicina
RutNombre
Apellido
Fecha de IngresoCarrera
2
4
Problema
RUT Nombre Apellido Curso Semestre Carrera
1132 José Pérez Bases de Datos Aplicadas 7 Ing Civil
1132 José Pérez Programación Matemática 7 Ing Civil
1132 José Pérez Operaciones Unitarias 1 7 Ing Civil
1132 José Pérez Estadística Aplicada 7 Ing Civil
1132 José Pérez Critical Thought 7 Ing Civil
2232 Andrés Smith Estructura Bases de Datos 7 Ing Civil
2232 Andrés Smith Programación Matemática 7 Ing Civil
2232 Andrés Smith Operaciones Unitarias 1 7 Ing Civil
2232 Andrés Smith Estadística Aplicada 7 Ing Civil
5
Existen distintas formas normales que nos
ayudan a perfeccionar una base de datos
Cada una de ellas está contenida en la
anterior, por lo tanto para subir en Forma
Normal hay que haber pasado las anteriores
Importante,
No perder información
Reversible, poder volver atrás
Formas Normales
6
Normalización
1FN
2FN
3FN
FNBC
4FN
5FN
3
7
La correcta especificación de los modelos
anteriormente vistos, permite una adecuada
modelación a la Base de Datos. La cual se
realiza a través de los Modelos Entidad /
Relación, Modelo Relacional y los
Diagramas de Dependencias Funcionales
Puede ser tomado como la eliminación de
fechas de relación del Diagrama de
Dependencias Funcionales
Formas Normales
8
Normalización y Desnormalización
proyección
Normalización Desnormalización
a1 a2 a3 a4 a5 a6
a1 a2 a3 a5 a1 a4 a6
combinación
a1 a4 a6a1 a2 a3 a5
a1 a2 a3 a4 a5 a6
9
Definición Formal:
Una tabla de relación está en 1FN, si y
solo si cada valor de toda tupla contiene
exactamente un valor para cada atributo.
Primera Forma Normal, 1FN
4
10
Tener relaciones, es la condición de la
Primera Forma Normal, 1FN. Lo cual
vimos en el Modelo Relacional, las tablas.
Primera Forma Normal, 1FN
RUT Nombre Apellido Fecha Ingreso Carrera
1132 José Pérez 1/01/2001 Ing Civil
2232 Andrés Smith 1/01/2002 Derecho
3321 Felipe Soto 1/01/2004 Medicina
11
Ejemplo, Primera Forma Normal, 1FN
RutNombre
Apellido
Facultad
Carrera
CampusFechaIngreso
12
Tabla
RUT Carrera Nombre Apellido Facultad Campus
1132 Ing Civil José Pérez Ingeniería San Carlos
3201 Ing Civil Pedro Gomez Ingeniería San Carlos
2232 Pediatría Andrés Smith Medicina Clínica
9878 Pediatría María Torres Medicina Clínica
5
13
Revisar las Relaciones
14
Definición Formal:
Una tabla relacional está en 2FN si y
sólo si está en 1FN y todo atributo que
no sea clave es dependiente
irreduciblemente de la clave primaria.
Segunda Forma Normal, 2FN
15
Ejemplo, 1FN, pero no 2FN
RutNombre
Apellido
Facultad
Carrera
Campus
¿El atributo Facultad es dependiente
irreduciblemente de la clave primaria Rut?
6
16
Ejemplo, Segunda Forma Normal, 2FN
Facultad
Carrera
Campus
RutNombre
ApellidoCarrera
17
Tablas
Carrera Facultad Campus
Ing Civil Ingeniería San Carlos
Pediatría Medicina Clínica
RUT Carrera Nombre Apellido
1132 Ing Civil José Pérez
3201 Ing Civil Pedro Gomez
2232 Pediatría Andrés Smith
9878 Pediatría María Torres
18
Definición Formal:
Una tabla relacional está en 3FN si y
sólo si está en 2FN y todos los atributos
que no son clave son dependiente en
forma no transitiva de la clave primaria.
Tercera Forma Normal, 3FN
7
19
Una tabla de relación está e 3FN si y sólo
si los atributos que no son claves son:
Mutuamente independientes y
Dependientes irreduciblemente sobre la
clave primaria
Tercera Forma Normal, 3FN
20
Ejemplo, No está en 3FN
Facultad
Carrera
Campus
RutNombre
ApellidoCarrera
21
Solución, Tercera Forma Normal, 3FN
FacultadCarrera
Campus
RutNombre
ApellidoCarrera
Carrera
8
22
Tablas
Carrera Facultad
Ing Civil Ingeniería
Pediatría Medicina
RUT Carrera Nombre Apellido
1132 Ing Civil José Pérez
3201 Ing Civil Pedro Gomez
2232 Pediatría Andrés Smith
9878 Pediatría María Torres
Carrera Campus
Ing Civil San Carlos
Pediatría Clínica
23
Ejemplo2, Tercera Forma Normal, 3FN
País
Continente
Capital
Problema
País
Capital
Continente
País
Continente
Capital
Solución 1
Solución 2
REVISAR https://www.cia.gov/library/publications/the-world-factbook/index.html
24
Bases de Datos
9
25
Definición Formal:
Una tabla relacional está en FNBC si y
solamente si toda Dependencia
Funcional no trivial, irreducible a la
izquierda, tiene una clave candidata
como su determinante.
Forma Normal Boyce/Codd, FNBC
26
Una tabla relacional está en FNBC si y sólo
si los únicos determinantes son claves
primarias.
Determinante Dependiente
Con FNBC, todas las flechas de relación
parten desde una clave candidata
Al llegar a FNBC, puede ser preciso perder
dependencias o información.
Forma Normal Boyce/Codd, FNBC
27
Ej. No Esta en Normal Boyce/Codd, FNBC
Número Alumno Nombre
Apellido
Rut Alumno
Las claves no se traslapan
Ojo, no existe un alumno con dos números
de alumno.
10
28
Solución, FNBC
Número Alumno Rut Alumno
RutAlumno Nombre
Apellido
CodCarrera
29
Normalización y Desnormalización
proyección
Normalización Desnormalización
a1 a2 a3 a4 a5 a6
a1 a2 a3 a5 a1 a4 a6
combinación
a1 a4 a6a1 a2 a3 a5
a1 a2 a3 a4 a5 a6
30
Ejemplo2, Forma Normal Boyce/Codd
NumAlumno Curso RutProfesor
A1 Estadística P1
A1 Cálculo P2
A2 Estadística P1
A2 Cálculo P2
11
31
Ejemplo2, Forma Normal Boyce/Codd
NumAlumno
RutProfesor
Curso
{NumAlumno, Curso} RutProfesor
RutProfesor Curso
Curso RutProfesor (No es válido, varios Prof.)
Está en 3FN, pero no en FNBC
32
Ejemplo3, Forma Normal Boyce/Codd
NumAlumno
PosiciónCurso
Posición al dar una prueba
Se traslapan parcialmente, pero está en
FNBC
Curso
NumAlumnoPosición
33
Cuarta y Quinta Forma Normal, FN4, FN5
La Cuarta y Quinta Forma Normal,
dependen de dependencias multivaluadas y
por lo tanto se escapa de los límites de este
curso.
12
34
Conservación de la información
Conservación de las dependencias
Mínima redundancia de los datos
(normalización de las relaciones)
¿Qué es lo que se quiere con la Normalización?
35
Niveles de Abstracción
Modelo Entidad / Relación
Modelo Relacional
Dependencias Funcionales
Forma Normal
Nota: estos son los modelos vistos hasta el momento.
Modelos e Iteraciones
36
Andrés Moreno S.
FORMAS NORMALES