Post on 01-Oct-2021
BASES DE DATOS 2020
(Código de Materia: ECF)
Docentes:
Mag. Ing. Gustavo E. Juarez Ing. Franco Menendez Ing. Cristian Lafuente
UNIDAD V - PROGRAMA ANALITICO
Bases de Datos 2020 (Código de Materia: ECJ)
ProgramaAnalíticodelaMateria
Bases de Datos 2020 (Código de Materia: ECJ)
Unidad5–Normalizacion.
Conceptosdenormalizaciónenlavinculacióny/orelacióndetablasycontenedoresde
basesdedatos.Normalización.FormasNormales.Anomalías.TipificacióndeFormas
Normales.Estudiode1FN,2FN,3FNyFNdeBoyce-Codd.
Parte I
Bases de Datos 2020 (Código de Materia: ECJ)
Bases de Datos 2020 (Código de Materia: ECJ)
Normalización
LateoríadelmodelorelacionalyelprocesodenormalizacióndelasBasesdeDatos,fue
desarrolladoporEdgarFrankCoddensuspapers:
• “Arelationalmodelforlargeshareddatabanks”–ACM–1970.
• “Furthernormalizationofthedatabaserelationalmodel”–RUSTIN–1972.
En estos papers investiga, identifica las causas y define las primeras tres “formas
normales”.
Comentario:
Una relación es una forma normal específica si satisface el conjunto de requisitos o
restriccionesparadichaforma.
Bases de Datos 2020 (Código de Materia: ECJ)
Normalización
Introducción:
Con el fin de corregir algunas redundancias y anomalías, EF Codd (1972) propuso tres
formas normales, 1FN, 2FN y 3FN, logrado tener pérdida menores a causa del proceso
de descomposición, (preservación de la dependencia) de la relación inicial universal
en relaciones más pequeñas, sobre la base de las dependencias funcionales (FDS).
Bases de Datos 2020 (Código de Materia: ECJ)
Normalización
Poco después, Heath y Boyce y Codd (1974) identificaron algunas insuficiencias de la
definición de 3FN, por lo que redefinieron la 3FN y se le cambió el nombre Forma
Normal de BoyceCodd - FNBC.
Ronald Fagin (1977) fue el primero en describir la cuarta forma normal, 4NF, basado
en las dependencias multivaluadas - MVDS (Zaniolo, Fagin, Delobel), así como la quinta
forma normal, 5NF (Fagin, 1979) o forma normal de proyección-enlace (PJ / NF), la
cual se basa en unir dependencias (JDS).
Bases de Datos 2020 (Código de Materia: ECJ)
Normalización–TiposyModeladodeDatos
Dependencias Funcionales Es un tipo de relación entre atributos
Dependencias Multivaluadas Dos tuplas (A,m) donde A es un conjunto
y m es una Función de A
Inclusión Es la existencia de atributos en una tabla R, cuyos valores deben ser un subconjunto de valores de los
atributos correspondientes en la otra tabla S
Enlace / Join Una tabla de T está sujeta a una condición de
enlace (JOIN) si T siempre se puede recrear al unirse varias Tablas, cada una con un
subconjunto de los atributos de T
Problemas
Bases de Datos 2020 (Código de Materia: ECJ)
Normalización-Objetivos
• Desarrollar una “buena” descripción de los datos, sus relaciones y sus restricciones.
• Identificarunconjunto“adecuado”derelaciones.
• MejorarelDiseñoLógico.
Bases de Datos 2020 (Código de Materia: ECJ)
Normalización-Propósitos
• Producir un conjunto estable de relaciones que sea unmodelo fiel de las
operacionesdelaempresa.
• Lograrundiseñoflexiblequepermitaextenderelmodelocuandosenecesite
representarnuevosatributos,conjuntosdeentidadesyrelaciones.
• Diseñar la base de datos fortaleciendo ciertos tipos de restricciones de
integridad.
• Reducirlaredundanciaenlasbasesdedatos,paraahorrarespacioyenposde
evitarinconsistenciasenlosdatos.
ABSTRACCION
ESCALABILIDAD
ANOMALIA
COMPLETITUD
Bases de Datos 2020 (Código de Materia: ECJ)
Anomalias
Bases de Datos 2020 (Código de Materia: ECJ)
Anomalías
Definición:
“Una anomalía es un estado inconsistente, incompleto o contradictorio
de la base de datos“(Ricardo).
Una tabla que cumple con unamínima definición de relación puede no tener una
estructuraeficazuapropiada.
Si hubiera anomalías presentes en la relación, esta sería incapaz de representar cierta
información, pudiendo perder información a partir de procesar actualizaciones,
corriendo el riesgo de que los datos se vuelvan inconsistentes.
Bases de Datos 2020 (Código de Materia: ECJ)
TipificacióndelasAnomalías
1. Anomalías de Inserción: ocurre cuando no se puede ingresar una
ocurrenciahastaquesetengaunhechoadicionalacercadeotraentidad.
2. AnomalíasdeModificación:ocurrecuandosemodificaunvalor,ynose
verificanlosvaloresingresados,losquefinalmentesonconsolidadosenla
basededatos.UnaSoluciónaesteproblemaposibleesdividirlarelación
endosrelaciones.
3. Anomalías de Eliminación: ocurre cuando se elimina una tupla o un
valorespecifico,yestehechoafectaaotrasentidades.
Bases de Datos 2020 (Código de Materia: ECJ)
Anomalíasdeinserción,actualizaciónyborrado
Considerelasiguienterelación:
NewClass (classNo, stuId, stuLastName, facId, schedule, room, grade)
Aclaraciones:
• Enesteejemplosesuponequesolamenteexisteunmiembrodelpersonaldocente
paracadaclase(estoes:nohayenseñanzaenequipo).
• Se supone que cada clase siempre tiene asignado el mismo salón.
Bases de Datos 2020 (Código de Materia: ECJ)
Anomalíasdeinserción,actualizaciónyborrado
La tabla NewClass
Anomalía de actualización. Suponga que quiere cambiar el horario de ART103A a MWF12. Es
posible que pueda actualizar los dos primeros registros de la tabla NewClass, pero no el
tercero, lo que resulta en un estado inconsistente en la base de datos. Entonces sería imposible
decir el verdadero horario para dicha clase. Ésta es una anomalía de actualización.
Bases de Datos 2020 (Código de Materia: ECJ)
Anomalíasdeinserción,actualizaciónyborrado
La tabla NewClass
Anomalía de inserción. Ocurre cuando intenta agregar información acerca de un curso para el cual
todavía no hay estudiantes registrados. Por ejemplo, suponga que crea una nueva clase, con valores
MTH110A, F110, MTuTh10, H225 para classNumber, facId, schedule y room. No es posible registrar la
información del curso, aun cuando tenga los valores para estos atributos. Dado que la clave es
{courseNo,stuId}, no tiene permiso para insertar un registro con un valor nulo para stuId. Puesto que no
tiene posibilidad de representar esta información de clase, tiene una anomalía de inserción.
MTH110A F110 MTUTH10 H225
Bases de Datos 2020 (Código de Materia: ECJ)
Anomalíasdeinserción,actualizaciónyborrado
La tabla NewClass
Anomalía de borrado. Cuando borra el registro del único estudiante que toma un curso
particular, ocurre una anomalía de borrado. Por ejemplo, si el estudiante S1001 se retira de
HST205A, perdería toda la información acerca de dicho curso. Sería deseable conservar la
información del curso, pero no puede hacerlo sin un stuId correspondiente. De igual modo, si un
estudiante abandona el único curso que toma, se pierde toda la información acerca de dicho
estudiante.
Bases de Datos 2020 (Código de Materia: ECJ)
Formas Normales
Bases de Datos 2020 (Código de Materia: ECJ)
FormasNormalesCoddmediante la publicación de trabajos como “A relationalmodel for a large
shareddatabanks”,y“Furthernormalizationofthedatabaserelationalmodel”,
definiólas1FN,2FNy3FN(Primera,SegundayTerceraFormaNormal).
Mástarde,otrosautorescontinuaroninvestigandolospatronesdeanomalíasque
ocurríanenlasBasesdeDatosyespecificaronlassiguientesformasnormales:
Bases de Datos 2020 (Código de Materia: ECJ)
FormasNormales
Lasrelacionessepuedenclasificarportipodeanomalíasdemodificaciónalas
cualessonvulnerables.
EnlaDécadade1970losteóricosrelacionalesinvestigaronacercadeestostipos.
Cuando alguno encontraba una anomalía, la clasificaba y pensaba en una
maneradeprevenirla, las cuales con el tiempo y luegode estudiarnumerosas
ocurrencias,recibieronelnombredeFormasNormales.
Bases de Datos 2020 (Código de Materia: ECJ)
FormasNormales
Tanto para el Análisis Conceptual como para el desarrollo del Modelo Lógico, es
necesarioconsiderarciertasespecificacionesquefaciliteneltrabajoconlasTablas.
Enestesentido,Sommerville(1988)dijo
"unbuendiseño,eslaclavedeunaeficienteingenieríadelsoftware.Unsoftware
biendiseñadoesfácildeaplicarymantener,ademásdesercomprensibley
fiable.Sistemasmaldiseñados,aunquepuedanfuncionar,seráncostososde
mantener”.
.
Bases de Datos 2020 (Código de Materia: ECJ)
FormasNormales-Definición
“Lanormalizacióneslatransformacióndelasvistasdeusuariocomplejasydel
almacéndedatosaunjuegodeestructurasdedatosmáspequeñasyestables.
Ademásdesermássimplesyestables,lasestructurasdedatossonmásfácilesde
mantenerqueotrasestructurasdedatos”.
(Kendall,2005)
Bases de Datos 2020 (Código de Materia: ECJ)
FormasNormalesParamejorareldesempeñodeunabasededatos,asícomoevitarredundanciaen
la información que contiene y, en consecuencia, generar condiciones para un
mejordiseño,elanalistadesistemasdebeconocerlasformasdenormalizacióny
condicionesenlasqueladesnormalizaciónesrecomendable.
El estudio de este tema te permitirá identificar las tres primeras reglas de
normalizacióndeestructurasdebasesdedatos(1FN,2FNy3FN),atravésdelos
pasosparanormalizar odesnormalizaruna, con el fin de implementarmejores
diseñosalasmismas.
Bases de Datos 2020 (Código de Materia: ECJ)
FormasNormales-DesnormalizacionLas reglas de normalización no consideran el rendimiento. En algunos casos es
necesarioconsiderarladesnormalizaciónparamejorarelrendimiento.
Definición
“Ladesnormalizaciónesladuplicaciónintencionadadecolumnasenvariastablas,lo
cualaumentalaredundanciadedatos”.
VentajadeunamayorvelocidaddeprocesamientoVSDesventajadedatosanómalos.
Bases de Datos 2020 (Código de Materia: ECJ)
MARCOHISTORICODELASFORMASNORMALES
FormasNormales Definidapor
PrimeraFormaNormal(1NF)E.F.Codd(1970)C.J.Date(2003)
SegundaFormaNormal(2NF) E.F.Codd(1971)TerceraFormaNormal(3NF) E.F.Codd(1971)
FormaNormaldeBoyce-Codd(BCNF)
RaymondF.BoyceandE.F.Codd(1974)
CuartaFormaNormal(4NF) RonaldFagin(1977)QuintaFormaNormal(5NF) RonaldFagin(1979)
FormaNormaldeDominioClave(DKNF)
RonaldFagin(1981)
SextaFormaNormal(6NF) C.J.Date,HughDarwenyNikosLorentzos(2002)
Bases de Datos 2020 (Código de Materia: ECJ)
FormasNormalesEsposibleentendermejorelprocesodenormalizaciónmediante lautilizaciónde
conjuntos incluidos unos de otros, en donde las formas normales se encuentran
anidadasconunmismocentro.
El objetivo del diseño debe ser poner el
esquema en la forma normal más alta,
queesprácticayadecuadaparalosdatosen
labasededatos.
Lanormalizaciónrequieretenerenclarola
semánticadelmodelo.
Bases de Datos 2020 (Código de Materia: ECJ)
FormasNormalesCoronel, Morris y Rob (2011) refieren que la normalización es utilizada en
diferentesmomentos:
Nueva estructura1. Cuando diseñan una
nueva estructura de bases
de datos fundamentada en
l a s n e c e s i d a d e s d e
negoc ios de usuar ios
finales.
Análisis de relaciones entre atributos
2. Después de que el diseño inicial está completo, el diseñador puede usar normalización para analizar las relaciones que existen entre los atributos dentro de cada entidad, para determinar si la estructura se puede mejorar por medio de normalización.
Mejora en el Diseño3. Por medio de un análisis de relaciones entre los atributos o campos de la estructura de datos, el diseñador puede usar el proceso de normalización para mejorarla, a fin de crear un diseño apropiado de bases de datos.
Modificación de Estructura
4. Para diseñar una nueva estructura de datos o modificar una ya existente, el proceso de normalización es el mismo.
Bases de Datos 2020 (Código de Materia: ECJ)
PRIMERA FORMA NORMAL
Bases de Datos 2020 (Código de Materia: ECJ)
Restricciones
Paraqueunatablaseaunarelacióndebecumplirconciertasrestricciones:
1. Lasceldasdebenserdeunvalorúnico.Nosepuedetenernirepetirgrupos
nitenerseriesencalidaddevalores.
2. Todaslasentradasenunamismacolumnadebenserdelmismotipo.
3. Cadacolumnatieneunnombreúnicoyelordenenlascolumnasenlatabla
noesimportante.
4. Dosrenglonesenlatablanopuedenseridénticosyelordendelosrenglones
notieneimportancia.
PRIMERA FORMA NORMAL (PFN o 1FN)
Bases de Datos 2020 (Código de Materia: ECJ)
Para describir la primera forma normal se usará un contraejemplo. Si supone que a un
estudiante se le permite tener más de una especialidad, y se intenta almacenar
especialidades múltiples en el mismo campo del registro del estudiante, la tabla
NewStu puede parecerse a la que muestra la Figura.
Este ejemplo viola la definición de la primera forma normal. La pregunta es como corregimos la anomalia?
PRIMERA FORMA NORMAL (PFN o 1FN)
Bases de Datos 2020 (Código de Materia: ECJ)
Definición 1FN:
“Una relación está en la primera forma normal (1FN) si y sólo si cada
atributo tiene valor sencillo para cada tupla”.
Esto significa que cada atributo en cada fila, o cada “celda” de la tabla, contiene sólo
un valor. Una forma alternativa de describir la primera forma normal es decir que los
dominios de los atributos de la relación son atómicos.
Esto significa que en el dominio no se permiten conjuntos,
listas, campos repetidos o grupos.
PRIMERA FORMA NORMAL (PFN o 1FN)
Bases de Datos 2020 (Código de Materia: ECJ)
Los valores en el dominio deben ser valores únicos que no se puedan descomponer más.
En la Figura se ve la violación de esta regla en los registros de los estudiantes S1006 y
S1010, quienes ahora tienen dos valores mencionados para major.
PRIMERA FORMA NORMAL (PFN o 1FN)
Bases de Datos 2020 (Código de Materia: ECJ)
PRIMERA FORMA NORMAL (PFN o 1FN)
Bases de Datos 2020 (Código de Materia: ECJ)
SEGUNDA FORMA NORMAL
Bases de Datos 2020 (Código de Materia: ECJ)
Definición:
“SiResunesquemaderelación,yAyBsonconjuntosdeatributosnovacíosenR,sedice
queBesfuncionalmentedependienteenAsiysólosicadavalordeAenRtieneasociado
exactamenteunvalordeBenR”
Estoseescribecomo:
queseleecomo“AdeterminafuncionalmenteaB”.
Unadependenciafuncionalesunaconexiónentreunoomásatributos.Porejemplosise
conoceelvalordeDNI,seinfiereunaconexiónconApellidooNombre.
A B
SEGUNDA FORMA NORMAL (SFN o 2FN)
→
Bases de Datos 2020 (Código de Materia: ECJ)
DependenciafuncionalcompletaySegundaFormaNormal(SFNo2FN)Para la relación que se muestra en la Figura, se tienen las siguientes dependencias
funcionales además de las triviales:
SEGUNDA FORMA NORMAL (SFN o 2FN)
{courseNo, stuId} → {stuLastName} {courseNo, stuId} → {facId}
{courseNo, stuId} → {room}{courseNo, stuId} → {grade}
Bases de Datos 2020 (Código de Materia: ECJ)
Dado que no hay otra clave candidata, se elige {courseNo, stuId} para la clave primaria.
De nuevo, al ignorar las dependencias funcionales triviales, también se tienen las
dependencias funcionales
courseNo → facId courseNo → schedule
courseNo → room stuId → lastName
De modo que se encuentran atributos que son funcionalmente dependientes en la
combinación {courseNo, stuId}, pero también funcionalmente dependientes en un
subconjunto de dicha combinación.
Se dice que tales atributos no son por completo dependientes funcionales de la
combinación.
SEGUNDA FORMA NORMAL (SFN o 2FN)
Bases de Datos 2020 (Código de Materia: ECJ)
Definición 2FN:
“Una relación está en segunda forma normal (2FN) si y sólo si
está en primera forma normal y todos los atributos
no clave son completamente dependen completamente de la clave”.
Claro está, si una relación es 1FN y la clave consiste en un solo atributo, la relación es
automáticamente 2FN. Tiene que preocuparse por 2FN sólo cuando la clave sea
compuesta.
SEGUNDA FORMA NORMAL (SFN o 2FN)
Bases de Datos 2020 (Código de Materia: ECJ)
DependenciafuncionalcompletaySegundaFormaNormal(SFNo2FN) Es importante notar que, cuando se usa esta notación menos formal, los atributos a la
derecha de la flecha se pueden “descomponer” y citar como DF separadas, pero los
atributos en el lado izquierdo deben permanecer unidos, pues es su combinación la que
es determinante. Las dependencias funcionales son
SEGUNDA FORMA NORMAL (SFN o 2FN)
courseNo → facId, schedule, room
stuId → lastName
courseNo,stuId → grade
facId, schedule, room, lastName
Bases de Datos 2020 (Código de Materia: ECJ)
Al usar proyección, se descompone la relación NewClass en el siguiente conjunto de
relaciones:
Register (courseNo, stuId, grade)
Stu (stuId, stuLastName)
Class2 (courseNo, facId, schedule, room)
.
SEGUNDA FORMA NORMAL (SFN o 2FN)
Bases de Datos 2020 (Código de Materia: ECJ)
TERCERA FORMA NORMAL
Bases de Datos 2020 (Código de Materia: ECJ)
Aunque las relaciones de la segunda forma normal son mejores que las de la primera forma normal,
todavía pueden tener anomalías de actualización, inserción y borrado. Considere la siguiente
relación:
TERCERA NORMAL (TFN o 3FN)
La Figura muestra una instancia de
esta relación. Aquí, la única clave
candidata es stuId y se usará como la
clave primaria. Todo otro atributo de la
relación es funcionalmente dependiente
de la clave, así que se tiene la siguiente
dependencia funcional, entre otras:
stuId → credits
NewStudent (stuId, lastName, major, credits, status)
Bases de Datos 2020 (Código de Materia: ECJ)
Sin embargo, dado que el número de créditos determina el status, también se tiene
credits → status
Por tanto, stuId de manera funcional determina status en dos formas, directa y
transitivamente, a través del atributo no clave status. Al usar transitividad se tiene
(stuId → credits) ∧ (credits →status)⇒ (stuId → status)
TERCERA NORMAL (TFN o 3FN)
Bases de Datos 2020 (Código de Materia: ECJ)
Definición Dependencia Funcional Transitiva:
“Si A, B y C son atributos de la relación R, tales que A → B
y B → C, entonces C es transitivamente dependiente de A”.
Para la Tercera Forma Normal se quiere eliminar ciertas dependencias transitivas. Las
dependencias transitivas causan anomalías de inserción, borrado y actualización.
TERCERA NORMAL (TFN o 3FN)
A B→ C→---------------------→
Dependencia Transitiva
Dependencia Funcional
Dependencia Funcional
Bases de Datos 2020 (Código de Materia: ECJ)
Debido a estos problemas, es deseable remover las dependencias transitivas y crear un
conjunto de relaciones que satisfagan la siguiente definición.
Definición 3FN:
“Una relación está en tercera forma normal (3FN) si, siempre que
exista una dependencia funcional no trivial X → A,
entonces o X es una superclave o A es un miembro
de alguna clave candidata”.
TERCERA NORMAL (TFN o 3FN)
Bases de Datos 2020 (Código de Materia: ECJ)
Las características de la tercera forma normal implican que cada atributo no clave
debe depender de la clave, toda la clave y nada más que la clave.
Al comprobar la tercera forma normal, se busca si algún atributo no clave candidata
(o grupo de atributos) es funcionalmente dependiente de otro atributo no clave (o
grupo).
Si existe tal dependencia funcional, se remueve de la relación el atributo
funcionalmente dependiente, y se le coloca en una nueva relación con su determinante.
El determinante puede permanecer en la relación original.
TERCERA NORMAL (TFN o 3FN)
Bases de Datos 2020 (Código de Materia: ECJ)
DependenciaTransitivayTerceraFormaNormal(TFNo3FN)
Para el ejemplo NewStudent, dado que la dependencia indeseable es
credits → status, y status no es parte de alguna clave candidata, se forma el conjunto
de relaciones:
NewStu2 (stuId, lastName, major, credits) Stats (credits, status)
TERCERA NORMAL (TFN o 3FN)
Bases de Datos 2020 (Código de Materia: ECJ)
De hecho, se puede decidir no almacenar status en la base de datos, y calcular el
status para aquellas vistas que la necesiten. En este caso, simplemente se elimina la
relación Status.
Este ejemplo no involucra múltiples claves candidatas. Si en la relación original se
tiene una segunda clave candidata, socialSecurityNumber, se tendría
socialSecurityNumber → status
TERCERA NORMAL (TFN o 3FN)
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Formas Normales
Integración de conocimientos adquiridos
BasesdeDatos Mg.Ing.GustavoE.Juárez
Bases de Datos 2020 (Código de Materia: ECJ)
Definición 1FN:
“Una relación está en la primera forma
normal (1FN) si y sólo si cada
atributo tiene valor sencillo para cada
tupla”.
Definición Dependencia Funcional:
“SiResunesquemaderelación,yAyB
sonconjuntosdeatributosnovacíosenR,sediceque
BesfuncionalmentedependienteenAsiysólosicada
valordeAenRtieneasociadoexactamenteunvalor
deBenR”.
Definición 2FN:
“Una relación está en segunda forma normal (2FN) si y sólo si
está en primera forma normal y todos los atributos
no clave son completamente dependientes funcionales sobre la clave”.
Compendio de Formas Normales
Bases de Datos 2020 (Código de Materia: ECJ)
• La normalización es una técnica utilizada para diseñar tablas en las que las
redundancias de datos se reducen al mínimo.
• Las primeras tres formas normales (1FN, 2FN y 3FN) son las más utilizadas. Desde un
punto de vista estructural, las formas de mayor nivel son mejores que las de menor
nivel, porque aquellas producen relativamente pocas redundancias de datos en la base
de datos.
• En otras palabras, 3FN es mejor que 2FN y ésta, a su vez, es mejor que 1FN. Casi todos
los diseños de negocios utilizan la 3FN como forma ideal.“Una relación está en la
primera forma normal (1FN) si y sólo si cada
Conclusiones
Bases de Datos 2020 (Código de Materia: ECJ)
Definición Dependencia Transitiva:
“Si A, B y C son atributos de la relación R, tales que A → B
y B → C, entonces C es transitivamente dependiente de A”.
Definición 3FN:
“Una relación está en tercera forma normal (3FN) si la relacion esta en
Segunda Forma Normal (2FN), siempre que
exista una dependencia funcional no trivial X → A,
entonces o X es una superclave o A es un miembro
de alguna clave candidata”.
Compendio de Formas Normales
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Formas Normales
Resolución Practica de Anomalías de 1FN, 2FN y 3FN
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID ApellidoyNombre Puesto/Cargo Sueldo Emails
1 KroenkeDavid JefedeArea 300,000 dkroeke@wiley.com,david.kroenke@gmail.com
2 AmblerCarol Administrativo 150,000 cambler@wiley.com
3 RiveroEnrique Vendedor 30,000 erivero@wiley.com,enrique.rivero@gmail.com
Primera Forma Normal:
Sus atributos contienen valores atómicos, lo que quiere decir que sus valores deben ser
indivisibles
Normalizacion de Primera Forma Normal de la Tabla EMPLEADO
1.- Eliminar el atributo Emails.
2.- Crear un atributo Email, el cual deberá contener datos indivisibles y será Indice
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID(Pk) ApellidoyNombre Puesto/Cargo Sueldo Email(Pk)
1 KroenkeDavid JefedeArea 300,000 dkroeke@wiley.com
2 AmblerCarol Administrativo 150,000 cambler@wiley.com
3 RiveroEnrique Vendedor 30,000 erivero@wiley.com
1 KroenkeDavid JefedeArea 300,000 david.kroenke@gmail.com
3 RiveroEnrique Vendedor 30,000 enrique.rivero@gmail.com
Normalizacion de Primera Forma Normal de la Tabla EMPLEADO
1.- Eliminar el atributo Emails.
2.- Crear un atributo Email, el cual deberá contener datos indivisibles y será Indice
EMPLEADO
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID(Pk) ApellidoyNombre Puesto/Cargo Sueldo
1 KroenkeDavid JefedeArea 300,000
2 AmblerCarol Administrativo 150,000
3 RiveroEnrique Vendedor 30,000
1 KroenkeDavid JefedeArea 300,000
3 RiveroEnrique Vendedor 30,000
Normalizacion de Primera Forma Normal de la Tabla EMPLEADO
3.- Crear una nueva Tabla EMPLEADOS_B, sin los datos de Email. Se debe normalizar las
Tablas resultantes.
EMPLEADOS_A
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID Email(Pk)
1 dkroeke@wiley.com
2 cambler@wiley.com
3 erivero@wiley.com
1 david.kroenke@gmail.com
3 enrique.rivero@gmail.com
Normalizacion de Primera Forma Normal de la Tabla EMPLEADO
4.- Crear una nueva Tabla EMAIL_B.
EMAIL_B
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID(Pk) ApellidoyNombre Puesto/Cargo Sueldo
1 KroenkeDavid JefedeArea 300,000
2 AmblerCarol Administrativo 150,000
3 RiveroEnrique Vendedor 30,000
ID Email(Pk)
1 dkroeke@wiley.com
2 cambler@wiley.com
3 erivero@wiley.com
1 david.kroenke@gmail.com
3 enrique.rivero@gmail.com
EMPLEADO_B
EMAIL_B
TABLAS NORMALIZADAS
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
Segunda Forma Normal:
1.- Esta en 1FN
2.- Todos los atributos que no son clave primaria tienen dependencia funcional completa con
respecto a todas las claves existentes en el esquema. Para recuperar un atributo no clave, se
necesita acceder por la clave completa, no por una subclave
3.- Las 2FN aplican a las relaciones con claves primarias compuestas por dos o más atributos
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID(Pk) ApellidoyNombre Puesto/Cargo Sueldo Email(Pk)
1 KroenkeDavid JefedeArea 300,000 dkroeke@wiley.com
2 AmblerCarol Administrativo 150,000 cambler@wiley.com
3 RiveroEnrique Vendedor 30,000 erivero@wiley.com
1 KroenkeDavid JefedeArea 300,000 david.kroenke@gmail.com
3 RiveroEnrique Vendedor 30,000 enrique.rivero@gmail.com
Normalizacion de Segunda Forma Normal de la Tabla EMPLEADO
ID —— > Apellido y Nombre, Puesto/Cargo, Sueldo
Email —— > Apellido y Nombre
Se detecta una Dependencia Funcional
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID(Pk) ApellidoyNombre Puesto/Cargo Sueldo
1 KroenkeDavid JefedeArea 300,000
2 AmblerCarol Administrativo 150,000
3 RiveroEnrique Vendedor 30,000
1 KroenkeDavid JefedeArea 300,000
3 RiveroEnrique Vendedor 30,000
Normalizacion de Segunda Forma Normal de la Tabla EMPLEADO
1.- Eliminar los atributos con Dependencias Funcionales incompletas, y Normalizar a 1FN.
2.- Crear una nueva Tabla con los atributos y la clave de la que depende.
ID Email(Pk)
1 dkroeke@wiley.com
2 cambler@wiley.com
3 erivero@wiley.com
1 david.kroenke@gmail.com
3 enrique.rivero@gmail.com
EMPLEADO_A EMAIL_B
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID(Pk) ApellidoyNombre Puesto/Cargo Sueldo
1 KroenkeDavid JefedeArea 300,000
2 AmblerCarol Administrativo 150,000
3 RiveroEnrique Vendedor 30,000
Normalizacion de Segunda Forma Normal de la Tabla EMPLEADO_A
1.- Eliminar los atributos con dependencias incompletas.
2.- Crear nueva Tabla con los atributos y la clave de la que realmente dependen.
ID Email(Pk)
1 dkroeke@wiley.com
2 cambler@wiley.com
3 erivero@wiley.com
1 david.kroenke@gmail.com
3 enrique.rivero@gmail.comEMPLEADO_B
EMAIL_B
TABLAS NORMALIZADAS
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
Tercera Forma Normal:
1.- Esta en 2FN
2.- Todos los atributos que no son clave primaria no dependen transitivamente de ésta
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID ApellidoyNombre Puesto/Cargo Sueldo
1 KroenkeDavid JefedeArea 300,000
2 AmblerCarol Administrativo 150,000
3 RiveroEnrique Vendedor 30,000
Normalizacion de Tercera Forma Normal de la Tabla EMPLEADO_B
ID —— > Puesto/Cargo
Puesto —— > Sueldo
Se detecta una Dependencia Transitiva
EMPLEADO_B
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
ID ApellidoyNombre Puesto/Cargo Sueldo
1 KroenkeDavid JefedeArea 300,000
2 AmblerCarol Administrativo 150,000
3 RiveroEnrique Vendedor 30,000
Normalizacion de Tercera Forma Normal de la Tabla EMPLEADO_B
1.- Separar en una tabla adicional los atributos que tienen dependencia transitiva con la clave
(Sueldo)
2.- Establecer como Pk el campo que define la transitividad (Puesto/Cargo)
EMPLEADO_B
Bases de Datos 2020 (Código de Materia: ECJ)
Compendio de Aplicación de Formas Normales
Puesto/Cargo(Pk) Sueldo
JefedeArea 300,000
Administrativo 150,000
Vendedor 30,000
ID ApellidoyNombre Puesto/Cargo+(Fk)
1 KroenkeDavid JefedeArea
2 AmblerCarol Administrativo
3 RiveroEnrique Vendedor
Normalizacion de Tercera Forma Normal de la Tabla EMPLEADO_C
3.- Se añade el campo «Puesto/Cargo» como Foreign Key:
EMPLEADO_CPUESTO/CARGO_B
Bases de Datos 2020 (Código de Materia: ECJ)
Bibliografía
Bases de Datos 2020 (Código de Materia: ECJ)
BibliográficasPrincipal
Bases de Datos 2020 (Código de Materia: ECJ)
• Paper “A relational model for a large shared data banks”, E. F. Codd.
https://www.seas.upenn.edu/~zives/03f/cis550/codd.pdf
• Libro “Fundamentos de Bases de Datos”, Rovarini P., De La Vega H.
• Libro “Sistemas de Bases de Datos. Conceptos Fundamentales”, R. Elmasrhi – S. Navathe.
2ª Edic. Edit . Addison – Wesley.
• Administración de Bases de Datos. Michael Mannino. 3a. Ed.
http://anyflip.com/vede/bmji
• Faculta de Ingeniería. Universidad de Talca (CHI).
http://ing.utalca.cl/~jperez/bd/documentos/al.pdf
http://catedras.facet.unt.edu.ar/bd/
https://classroom.google.com/ Código de Clase: lcuklge
https://meet.google.com/iqc-hmvt-zbu
https://www.facebook.com/liafacet/
Bases de Datos 2020 (Código de Materia: ECJ)
TEORIA
PRACTICA https://meet.google.com/crt-defa-mto