BASES DE DATOS 2020 - Sitios de las cátedras Facultad de Ci

Post on 01-Oct-2021

16 views 0 download

Transcript of BASES DE DATOS 2020 - Sitios de las cátedras Facultad de Ci

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