Núcleo 3 - Normalización de Bases de datos

5,609 views
5,182 views

Published on

Normalización de Bases de datos

2 Comments
6 Likes
Statistics
Notes
No Downloads
Views
Total views
5,609
On SlideShare
0
From Embeds
0
Number of Embeds
496
Actions
Shares
0
Downloads
0
Comments
2
Likes
6
Embeds 0
No embeds

No notes for slide

Núcleo 3 - Normalización de Bases de datos

  1. 1. Normalización de bases de datosUna relación es una tabla, compuesta por renglones y columnas que cumple con los siguientes requisitos:Las celdas de la tabla deben ser de un valor único, (nogrupos repetidos, no series por valores)Todas las entradas en cualquier columna deben ser delmismo tipoCada columna tiene un nombre único y el orden de lascolumnas no es importanteDos renglones no pueden ser identicos y el orden de losrenglones no tiene importancia
  2. 2. Normalización de bases de datosDependencia FuncionalRelación entre atributos según la cual conociendo el valor deuno podemos saber el valor del otro. En la relación de atributosA y B, B depende (funcionalmente) de A, si para un valor de Ahay sólo un valor de B, aunque a la inversa a un valor de Bpuedan corresponderle varios valores de A. También puedenincolucrar grupos de atributos.En este caso, ID_Estudiante y Asignatura, determinan lacalificación.Se escribe así: (ID_Estudiante, Asignatura)-> Calificación
  3. 3. Normalización de bases de datosDeterminantes vs. LlavesA diferencia de los determinantes, las llaves son únicas.Ejemplo: se establece que cada estudiante puede participarmáximo en una actividad:Según lo anterior, ID_Estudiante es tanto llave comodeterminante, mientras que Actividad es solamentedeterminante.
  4. 4. Normalización de bases de datosAnomalías en las relaciones:Anomalía de eliminación: Si al suprimir hechos de una entidad se suprimen hechos de otra entidad Si borramos al estudiante 1100 también se borra el hecho de que baloncesto cuesta 3000 Para registrar el hecho de que tejo cuesta 2000 habría que esperar a que alguien se inscribaAnomalía de inserción: Si no podemos insertar un hecho sobreuna entidad hasta que tengamos un hecho adicional de otraentidad
  5. 5. Normalización de bases de datosLa esencia de la normalización: Cualquier relación que tenga dos o más temas, debe dividirse en dos o más relaciones, que contengan cada una un tema
  6. 6. Normalización de bases de datosClases de relacionesLas relaciones se clasifican porlos tipos de anomalías a lascuales son vulnerables. Lastécnicas para prevenir esasanomalías se llaman formasnormales y se encuentrananidadas de la primera a laquinta.Primera forma normal: La tabla debe cumplir con los requisitos para ser una relación
  7. 7. Normalización de bases de datosSegunda forma normal (2NF)La relación está en 2NF si todos los atributos que no son llavedependen de todos los atributos de la llave Ejemplo: Como los estudiantes pueden estar más de una actividad la llave está formada por los campos ID_Estudiante-Actividad, pero el campo valor es dependiente SÓLO de Actividad. Solución:
  8. 8. Normalización de bases de datosTercera Forma normal (3NF)Una relación está en 3NF si está en 2NF y no tiene dependenciastransitivas.Ejemplo: Llave: ID_Estudiante Dependencias funcionales: Municipio → Pasaje ID_Estudiante → Municipio → PasajeID_Estudiante → Municipio → Pasaje es una dependencia transitivaSolución:
  9. 9. Normalización de bases de datosForma normal Byce-Codd (BCNF)La relación está en BCNF si cada determinante es una llavecandidataEjemplo: Aquí un estudiante puede estar en más de una carrera, un cansejero sólo puede asesorar en una carrera, pero en cada carrera pueden haber varios consejeros.Llaves: hay dos llaves candidatas Solución:1. ID_Estudiante-Carrera2. ID_Estudiante-ConsejeroOtros determinantes:Consejero → Carrera
  10. 10. Normalización de bases de datosCuarta forma normal (4NF)La relación está en 4NF si está en BCNF y no tiene dependenciasmultivaluadas.Ejemplo: Los estudiantes puede estar en más de una carrera y estar en más de una actividad.Llave: Solución:ID_Estudiante-Carrera-ActividadDependencías funcionales: No hayHay Dependencias multivaluadas:ID_Estudiante → → CarreraID_Estudiante → → Actividad
  11. 11. Normalización de bases de datosCuarta forma normal (4NF)La relación está en 4NF si está en BCNF y no tiene dependenciasmultivaluadas.Ejemplo: Los estudiantes puede estar en más de una carrera y estar en más de una actividad.Llave:ID_Estudiante-Carrera-Actividad Solución:Dependencías funcionales: No hayHay Dependencias multivaluadas:ID_Estudiante → → CarreraID_Estudiante → → Actividad
  12. 12. Normalización de bases de datosQuinta forma normal (5NF)Las condiciones necesarias para que una relación se encuentreen 4NF y no esté en 5NF son raras y escapan al alcance de estecurso. En todo caso se aplica como regla de oro la esencia de lanormalización: Cualquier relación que tenga dos o más temas, debe dividirse en dos o más relaciones, que contengan cada una un tema
  13. 13. Normalización de bases de datosForma normal dominio-llave (DK/NF)Primero se definen los conceptos, restricción, dominio y llaveRestricción: Cualquier regla que gobierna los valores estáticosde un atributo y es lo suficientemente precisa como para poderverificar que es verdadera.Llave: Atributo o grupo de atributos que identifica de maneraúnica una tupla.Dominio: Descripción física y lógica del conjunto de valores quepuede tomar un atributo.Una relación está en DK/NF si al cumplir las restricciones de lallave y del dominio, da como resultado que todas lasrestricciones se cumplan. Si se logra definir la relación de estaforma, no habrá anomalías de modificación.
  14. 14. Normalización de bases de datos Ejemplo forma normal dominio-llave (DK/NF)Dominios:Persona_rica: Toda la gente ricaTipo_de_persona_rica: Puede tomar los valores Millonario excéntrico, Multimillonarioexcéntrico, Millonario malvado, y Multimillonario malvadoValor_neto_en_dólares: Valores superiores a 1000.000 Hay una restricción que de acuerdo con este diseño podría no cumplirse, ya que aún cuando los atributos conserven los valores dentro de sus dominios, podría violarse y es el hecho de que para ser Multimillonario excéntricoo Multimillonario malvado el valor neto en dólares debe ser superior a 999.999.999.

×