La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

NORMALIZACION La teoría de la normalización, cuyas tres primeras formas normales fueron introducidas por Codd desde sus primeros trabajos, elimina dependencias.

Presentaciones similares


Presentación del tema: "NORMALIZACION La teoría de la normalización, cuyas tres primeras formas normales fueron introducidas por Codd desde sus primeros trabajos, elimina dependencias."— Transcripción de la presentación:

1 NORMALIZACION La teoría de la normalización, cuyas tres primeras formas normales fueron introducidas por Codd desde sus primeros trabajos, elimina dependencias entre atributos que originan anomalías en la actualización de la base de datos y proporciona una estructura más regular en la representación de las relaciones, constituyendo el soporte para el diseño de bases de datos relacionales. Esencialmente, la normalización es el proceso mediante el cual los esquemas insatisfactorios se descomponen repartiendo los atributos en esquemas más pequeños que poseen propiedades deseables.

2 Dependencia funcional Dada una relación R, un atributo A de R es funcionalmente dependiente de un atributo B de R, si para cada valor de B existe un único valor para A (B puede referirse a un conjunto de atributos) y se denota B --> A. Ejemplo: CI --> nombre CI --> fecha de nacimiento (dia,hora,sala) --> curso Ejemplo 2 LIBRO<colib, tiulo, editorial> Colibtitulo Colibeditorial Esta dependencia nos dice que el titulo es una información acerca del libro, ya que una dependencia funcional se puede interpretar diciendo que el implicado es un hecho acerca del implicante titulo codlib editorial

3 Primera forma normal (1NF)
Se dice que una tabla se encuentra en primera forma normal (1NF) si y solo si cada uno de los campos contiene un único valor para un registro determinado. Supongamos que deseamos realizar una tabla para guardar los cursos que están realizando los alumnos de un determinado centro de estudios, podríamos considerar el siguiente diseño: Código Nombre Cursos 1 Marcos Inglés 2 Lucas Contabilidad, Informática 3 Marta Inglés, Contabilidad Podemos observar que el registro de código 1 si cumple la primera forma normal, cada campo del registro contiene un único dato, pero no ocurre así con los registros 2 y 3 ya que en el campo cursos contiene más de un dato cada uno. La solución en este caso es crear dos tablas del siguiente modo: Código Curso 1 Inglés 2 Contabilidad Informática 3 Código Nombre 1 Marcos 2 Lucas 3 Marta

4 Dependencia funcional total
Un atributo A tiene dependencia (funcional) total de un conjunto de atributos B (B debe ser compuesto), si tiene dependencia funcional de B pero no de algún subconjunto de B (no hay dependencia parcial). Ejemplo: (dia,hora,sala) --> curso Dos atributos son mutuamente independientes si ninguno tiene dependencia del otro. Un atributo A es determinante si otro atributo B tiene dependencia funcional total de A. Es la semántica asociada a cada aplicación la que determina el tipo de dependencia entre los datos. Ejemplo 2 PRODUCCION <idpais,idproducto,cantidadprod,fecha> Considerando que la clave lo conforman los atributos: Idpais,idproducto,fecha cantidadprod PRODUCCION <idpais,nombrepais, idproducto,cantidadprod,fecha> Entonces nombrepais idpais cantidadprod idproducto editorial

5 Segunda forma normal (2NF)
La segunda forma normal compara todos y cada uno de los campos de la tabla con la clave definida. Si todos los campos dependen directamente de la clave se dice que la tabla está es segunda forma normal (2NF). Supongamos que construimos una tabla con los años que cada empleado ha estado trabajando en cada departamento de una empresa: Código Empleado Código Dpto. Nombre Departamento Años 1 6 Juan Contabilidad 2 3 Pedro Sistemas Sonia I+D 4 Verónica 10 5 Tomando como punto de partida que la clave de esta tabla está formada por los campos código de empleado y código de departamento, podemos decir que la tabla se encuentra en primera forma normal, por tanto vamos a estudiar la segunda

6 El campo nombre no depende funcionalmente de toda la clave, sólo depende del código del empleado.
El campo departamento no depende funcionalmente de toda la clave, sólo del código del departamento. El campo años si que depende funcionalmente de la clave ya que depende del código del empleado y del código del departamento (representa el número de años que cada empleado ha trabajado en cada departamento) Por tanto, al no depender todos los campos de la totalidad de la clave la tabla no está en segunda forma normal, la solución es la siguiente: Código Empleado Nombre 1 Juan 2 Pedro 3 Sonia 4 Verónica

7 Código Departamento Dpto. 2 I+D 3 Sistemas 6 Contabilidad Código Empleado Código Departamento Años 1 6 2 3 4 10 5 Podemos observar que ahora si se encuentras las tres tabla en segunda forma normal, considerando que la tabla A tiene como índice el campo Código Empleado, la tabla B Código Departamento y la tabla C una clave compuesta por los campos Código Empleado y Código Departamento

8 Dependencia Transitiva Supongamos los tributos X, Y y Z.
Si X  Y, y Y  Z, entonces decimos que Z depende transitivamente de X y se puede formar la cadena X  YZ. En diagrama de dependencia funcional es Y X Z Se puede descomponer en dos relaciones por la proyección del último eslabón de la forma: Y X Z R1 <X, Y> R2 <Y, Z>

9 Tercera forma normal (3NF)
Se dice que una tabla está en tercera forma normal si y solo si los campos de la tabla dependen únicamente de la clave, dicho en otras palabras los campos de las tablas no dependen unos de otros. Tomando como referencia el siguiente ejemplo , supongamos que cada alumno sólo puede realizar un único curso a la vez y que deseamos guardar en que aula se imparte el curso. A voz de pronto podemos plantear la siguiente estructura: Código Nombre Curso Aula 1 Marcos Informática Aula A 2 Lucas Inglés Aula B 3 Marta Contabilidad Aula C Estudiemos la dependencia de cada campo con respecto a la clave código: Nombre depende directamente del código del alumno. Curso depende de igual modo del código del alumno. El aula, aunque en parte también depende del alumno, está mas ligado al curso que el alumno está realizando. Por esta última razón se dice que la tabla no está en 3NF. La solución sería la siguiente:

10 Definición de determinante
Curso Aula Informática Aula A Inglés Aula B Contabilidad Aula C Código Nombre Curso 1 Marcos Informática 2 Lucas Inglés 3 Marta Contabilidad Definición de determinante Un determinante son todos los atributos situados en el lado izquierdo de una dependencia funcional. AB “A determina a B” Forma Normal de Boyce Codd (BCFN) Una relación R está en forma normal de Boyce Codd si, y solo sí, cada determinante de la relación es una clave candidata. Una relación que no está en BCFN debe descomponerse en otras dos. Gráficamente: Relación que no está en BCFN X Y Z

11 Ejemplo Se suponen las siguientes restricciones: Un estudiante puede tener una o más materias Una materia puede tener varios miembros de la facultad como consejeros Un miembro de la facultad solo imparte asesoría a una materia Estos datos se registran en la siguiente tabla: Cod_A Materia NombreF 100 Matemáticas Borda 150 Sicología Camacho 200 Cruz 250 Rocha 300 Andrade Matemática Esta relación se encuentra en 1FN, 2FN y 3FN pero no en la BCFN. La clave primaria de esta relación es Cod_A, Materia y el atributo Nombre_F depende de esta.

12 EST_ASIG <Cod_A, NombreF> ASIG_MAT <NombreF, Materia>
Ejemplo Claramente se ve que NombreF determina a Materia lo que significa que la relación no está en BCFN, por esto dividimos la relación en dos: EST_ASIG <Cod_A, NombreF> ASIG_MAT <NombreF, Materia> Dependencia de Valores Multivaluados (DMV) Se dice que existe dependencia de valores multivaluados si, un valor del atributo, A, determina un conjunto de valores múltiples, B. AB

13 En el ejemplo anterior se tiene:
De aquí, Id_ investigador determina a un conjunto de valores múltiples de Especialidad y de Hobby. Id _ investigador Especialidad Id_ investigador Hobby Id _ investigador Especialidad Hobby I1 Matemáticas Leer Viajar Física I2 Informática Cantar ¿Cómo eliminamos la redundancia en las dependencias de valores múltiples? La redundancia de los datos causados por la dependencia múltiple se puede eliminar mediante la creación de una nueva relación por cada atributo DMV. En el ejemplo anterior se tiene: Investigador <Id _ investigador, Especialidad> Afición <Id _ investigador, Hobby>


Descargar ppt "NORMALIZACION La teoría de la normalización, cuyas tres primeras formas normales fueron introducidas por Codd desde sus primeros trabajos, elimina dependencias."

Presentaciones similares


Anuncios Google