Está en la página 1de 25

FUNDAMENTOS DE BASES DE DATOS III UNIDAD

DISEO DE BASES DE DATOS RELACIONALES (NORMALIZACION)

RIESGOS DE LAS BASES DE DATOS RELACIONALES

COMO YA VIMOS LAS BASES DE DATOS RELACIONALES SON BASES DE DATOS BASADAS EN RELACIONES (TABLAS), LO QUE FACILITA SU MANEJO. SIN EMBARGO EXISTEN ALGUNOS RIESGOS DE USAR INADECUADAMENTE ESTAS BASES DE DATOS, ESTOS PUEDEN SER:
REPETICION INNECESARIA DE INFORMACION (REDUNDANCIA) PERDIDA DE INFORMACION INCAPACIDAD PARA REPRESENTAR CIERTA INFORMACION

REPETICION INNECESARIA DE INFORMACION REDUNDANCIA NO CONTROLADA


NO. CTRL 95 95 95 95 102 102 102 102 205 205 205 205 NOMBRE JUAN PEREZ JUAN PEREZ JUAN PEREZ JUAN PEREZ MARIA MARTINEZ MARIA MARTINEZ MARIA MARTINEZ MARIA MARTINEZ JOSE JIMENEZ JOSE JIMENEZ JOSE JIMENEZ JOSE JIMENEZ CLAVE MATERIA MAB2007 MAB2009 RHA2001 FIC2003 MAB2007 MAB2009 RHA2001 FIC2003 MAB2007 MAB2009 RHA2001 FIC2003 NOMBRE MATERIA CALIF FISICA I 80 FISICA II 78 DIBUJO 90 DINAMICA 78 FISICA I 79 FISICA II 80 DIBUJO 65 DINAMICA 90 FISICA I 80 FISICA II 85 DIBUJO 90 DINAMICA 65

OBSERVESE EN LA TABLA ANEXA COMO SE REPITE DE MANERA INECESARIA EL NOMBRE DE LAS PERSONAS Y EL NOMBRE DE LAS MATERIAS, LO CUAL PROVOCA MAYOR CONSUMO DE ESPACIO Y PUEDE PROVOCAR DEFECTOS DE ACTUALIZACION AL HACER EL CAMBIO DE UN NOMBRE DE ALUMNO O MATERIA

PERDIDA DE INFORMACION
SI EN LA TABLA DE ABAJO SE BORRARA LA MATERIA DE FISICA A LA ALUMNA 142. SE PERDERIA TAMBIEN SU NOMBRE SU FECHA DE NACIMIENTO SU Y FECHA DE INSCRIPCIO YA QUE ESTE ES EL UNICO REGISTRO QUE CONTIENE DICHA INFORMACION

No NOMBRE CTR ALUMNO 119 JUAN PEREZ 142 MARIA MARTINEZ 119 JUAN PEREZ

FEC PER CLA NOMBRE CRE PER NAC INS MAT MATERIA DIT INS CAL 17-Mar-76 972 A FISICA 8 972 70 11-May-73 952 A FISICA 8 952 90 17-Mar-76 972 B INGLES 6 972 90

SE PUEDE IMAGINAR QUE SE PERDERIA SI AL ALUMNO 119 SE LE QUITARA LA MATERIA DE INGLES?

INCAPACIDAD PARA REPRESENTAR CIERTA INFORMACION NO ES POSIBLE REPRESENTAR QUE EL CLIENTE LOPEZ SANTANA ANA TIENE OTROS DOS TELEFONOS

CLIENTES RFC NOMBRE PELJ580114 PEREZ LOPEZ JUAN LOSA461215 LOPEZ SANTANA ANA MASR720823MARTINEZ SAEN RUBEN

DIRECCION AV. REVOLUCION No 12 CJN. LAS PALOMAS No 7 LAS PALMAS 90

TELEFONO 1-42-47 1-12-12 1-23-14

FORMAS NORMALES
PARA QUE UN ESQUEMA DE UNA RELACION NO PROVOQUE NINGUNO DE ESTOS PROBLEMAS DEBE ESTAR NORMALIZADA.SIN EMBARGO EN MUCHAS OCASIONES SE TOMA EL COMPROMISO DE DEJAR UNA RELACION EN UN NIVEL NO COMPLETO DE NORMALIZACION.

1a FORMA NORMAL (1NF) 2a FORMA NORMAL (2NF) 3a FORMA NORMAL (3NF) FORMA NORMAL DE BOICE Y CODD (FNBD) 4a FORMA NORMAL (4NF) 5a FORMA NORMAL (5NF) FORMA NORMAL DOMINIO LLAVE (NFDK)

FORMA NORMAL

BASADA EN:

1NF

2NF
3NF NFBC 4NF 5NF

DEPENDENCIA
FUNCIONAL

DEPENDENCIA MULTIVALUADA PROYECCION - PRODUCTO

FNDK

DOMINIO LLAVE

LA NORMALIZACION IMPLICA LA DIVISION DE LAS RELACIONES, EN RELACIONES CON MENOS ATRIBUTOS, DE ACUERDO A UN CRITERIO BIEN DEFINIDO

UN BUEN DISEO DE BASE DE DATOS DEBERA CONTENER COMO MINIMO LA FORMA NFBC SIENDO DESEABLE LA 4NF.
COMO PODEMOS OBSERVAR LA MAYOR PARTE DE LA NORMALIZACION ESTA BASADA EN LA DEPENDENCIA FUNCIONAL

DEPENDENCIA FUNCIONAL
ESTE CONCEPTO ES UN CONCEPTO DEFINIDO DENTRO DEL DISEO DE BASES DE DATOS RELACIONALES, Y NO DEBE SER CONFUNDIDO CON ALGUN OTRO TIPO DE DEPENDENCIA.

SE DICE QUE A DEFINE FUNCIONALMENTE A B o QUE B DEPENDE FUNCIONALMENTE DE A

A->B
SI PARA CADA VALOR DE A EXISTE UN UNICO VALOR DE B
EJEMPLO: EL NUMERO DE CONTROL DE UN ALUMNO DEFINE FUNCIONALMENTE A LA FECHA DE NACIMIENTO DEL ALUMNO YA QUE A CADA NUMERO DE CONTROL DE ALUMNO LE CORRESPONDE UN UNICO VALOR DE FECHA DE NACIMIENTO

EN EL EJEMPLO ANTERIOR OBSERVE QUE UNA FECHA DE NACIMIENTO PUEDE CORRESPONDER A VARIOS NUMEROS DE CONTROL, PERO NO AL REVS. ESTO QUIERE DECIR QUE LA DEPENDENCIA FUNCIONAL

A->B
SI SE CUMPLE PERO; LA DEPENDENCIA FUNCIONAL INVERSA

B->A
NO SE CUMPLE

ENCONTREMOS LAS DEPENDENCIAS FUNCIONALES DE LOS SIGUIENTES ATRIBUTOS


CTRL 119 122 114 101 119 NOMBRE JUAN PEREZ MARIA BAES JUAN LOPEZ MARTIN CANO JUAN PEREZ FECNAC COD-ESP NOM_ESP 87-NOV-12 1 INFORMATICA 78-DIC-15 2 CONTADURIA 76-ABR-02 1 INFORMATICA 78-DIC-15 2 CONTADURIA 87-NOV-12 1 INFORMATICA

CTRL->NOMBRE CTRL->FECNAC CTRL->COD-ESP CTRL->NOM_ESP

COD-ESP->NOM_ESP NOM_ESP->COD_ESP

NOMBRE->CTRL NOMBRE-> FECNAC NOMBRE->COD-ESP NOMBRE->NOM_ESP

DEPENDENCIAS FUNCIONALES QUE NO SE CUMPLEN EN LA SIG DIAPOSITIVA

DEPENDENCIAS FUNCIONALES QUE NO SE CUMPLEN


FECNAC->CTRL
CTRL 119 122 114 101 119 NOMBRE JUAN PEREZ MARIA BAES JUAN LOPEZ MARTIN CANO JUAN PEREZ
PARA UN MISMO VALOR DE FECNAC EXISTEN DOS VALORES DISTINTOS DE CTRL

FECNAC COD-ESP NOM_ESP 87-NOV-12 1 INFORMATICA 78-DIC-15 2 CONTADURIA 76-ABR-02 2 CONTADURIA 78-DIC-15 1 INFORMATICA 87-NOV-12 1 INFORMATICA

TAMPOCO SE CUMPLEN POR LA MISMA RAZON:


FECNAC->NOMBRE FECNAC->COD-ESP FECNAC->NOM_ESP COD-ESP->CTRL COD-ESP->NOMBRE COD-ESP->FECNAC NOM_ESP->CTRL NOM_ESP->NOMBRE NOM_ESP->FECNAC

UN ATRIBUTO PUEDE DEPENDER FUNCIONALMENTE, NO DE UN ATRIBUTO, SINO DE UN CONJUNTO DE ATRIBUTOS.


RFCP NoFAC FECHA MONTO 1 1 99-ENE-12 $3,000.00 2 1 99-ENE-12 $2,500.00 1 2 99-FEB-15 $6,850.00 2 2 99-FEB-15 $6,850.00

OBSERVE QUE NINGUN ATRIBUTO DEFINE POR SI SOLO A NINGUN OTRO ATRIBUTO. SIN EMBARGO EL CONJUNTO DE ATRIBUTOS RFCP+NoFAC DEFINEN FUNCIONALMENTE A LOS OTROS DOS ATRIBUTOS Clic para empezar

EJEMPLO QUE SE UTILIZARA PARA LA NORMALIZACION


ALUMNO(Ctrl;Nombre,CodEsp,NomEsp,ClvMat,NomMat,Crd,Cal,Per) Donde: Ctrl= Numero de control del alumno Nombre = Nombre del alumno CodEsp = codigo de la especialidad que cursa el alumno NomEsp = nombre de la especialidad que cursa el alumno ClvMat = clave de las materias que ha cursado o se encuentra cursando un alumno NomMat = nombre de la materia Crd = numero de crditos de la materia Cal = calificacion obtenida por el alumno en dicha materia Per = periodo en el que curso dicha materia

FORMAS NORMALES BASADAS EN DEPENDENCIA FUNCIONAL:


1a FORMA NORMAL:

SE DICE QUE UNA RELACION SE ENCUENTRA EN PRIMERA FORMA NORMAL CUANDO TODOS LOS ATRIBUTOS NO LLAVE DEPENDEN FUNCIONALMENTE DE LA LLAVE
ALUMNO(Ctrl;Nombre,CodEsp,NomEsp,ClvMat,NomMat,Crd,Cal,Per)

OBSERVE QUE LOS ATRIBUTOS:

ClvMat,NomMat,Crd,Cal, y Per NO CUMPLEN ESTA DEFINICION.

PARA ELIMINAR UN ATRIBUTO QUE NO DEPENDE FUNCIONALMENTE DE LA LLAVE, SE DEBE CREAR OTRA RELACION DONDE LA LLAVE ESTE FORMADA POR LA LLAVE DE LA RELACION ORIGINAL Y EL ATRIBUTO QUE NO DEPENDE FUNCIONALMENTE.
ALUMNO(Ctrl;Nombre,CodEsp,NomEsp,ClvMat, NomMat,Crd,Cal,Per) ALUMNO(Ctrl;Nombre,CodEsp,NomEsp, NomMat,Crd,Cal,Per)

CALIF(Ctrl,ClvMat)

ALUMNO(Ctrl;Nombre,CodEsp,NomEsp, NomMat,Crd,Cal,Per)

COMO NomMat TAMPOCO DEPENDE FUNCIONALMENTE DE Ctrl TAMBIEN DEBERA DE ELIMINARSE


ALUMNO(Ctrl;Nombre,CodEsp,NomEsp, Crd,Cal,Per)

CALIF(Ctrl,ClvMat) (Ctrl,NomMat) SIN EMBARGO NO DEBEMOS GENERAR UNA NUEVA RELACION YA QUE EL ATRIBUTO NomMat DEPENDE FUNCIONALMENTE DE ClvMat
ALUMNO(Ctrl;Nombre,CodEsp,NomEsp, Crd,Cal,Per)

CALIF(Ctrl,ClvMat;NomMat)

PASANDO TODOS LOS ATRIBUTOS EN IGUALES CONDICIONES

ALUMNO(Ctrl;Nombre,CodEsp,NomEsp)

CALIF(Ctrl,ClvMat;NomMat,Crd,Cal, Per)

2a FORMA NORMAL
SE DICE QUE UNA TABLA ESTA EN SEGUNDA FORMA NORMAL CUANDO, ADEMAS DE ESTAR EN PRIMERA FORMA NORMAL, TODOS LOS ATRIBUTOS NO LLAVE DEPENDEN FUNCIONALMENTE DE LA LLAVE COMPLETA
ALUMNO(Ctrl;Nombre,CodEsp,NomEsp)

CALIF(Ctrl,ClvMat;NomMat,Crd,Cal, Per) OBSERVE QUE LOS ATRIBUTOS NomMat, Crd, DE LA RELACION CALIF, NO DEPENDEN DE LA LLAVE COMPLETA

PARA ELIMINAR DE UNA RELACION UN ATRIBUTO QUE NO CUMPLE LA 2NF SE DEBERA GENERAR OTRA RELACION, LA CUAL TENDRA COMO LLAVE, LA PARTE DE LA LLAVE DE LA RELACION ORIGINAL QUE DEFINE FUNCIONALMENTE EL ATRIBUTO
ALUMNO(Ctrl;Nombre,CodEsp,NomEsp)

CALIF(Ctrl,ClvMat;NomMat,Crd,Cal, Per)

ALUMNO(Ctrl;Nombre,CodEsp,NomEsp)

CALIF(Ctrl,ClvMat;Cal, Per)
MATERIAS(Clvmat;NomMat,Crd)

3a FORMA NORMAL
SE DICE QUE UNA RELACION, ESTA EN TERCERA FORMA NORMAL, CUANDO ADEMAS DE ESTAR EN SEGUNDA FORMA NORMAL, TODOS LOS ATRIBUTOS NO LLAVE DEPENDEN FUNCIONALMENTE DE LA LLAVE COMPLETA Y SOLAMENTE DE LA LLAVE
ALUMNO(Ctrl;Nombre,CodEsp,NomEsp)

CALIF(Ctrl,ClvMat;Cal, Per) MATERIAS(Clvmat;NomMat,Crd) OBSERVE QUE EL ATRIBUTO NomEsp, AUNQUE DEPENDE FUNCIONALMENTE DEL ATRIBUTO Ctrl, TAMBIEN DEPENDE FUNCIONALMENTE DEL ATRIBUTO CodEsp, Y POR LO TANTO NO ESTA EN 3FN

PARA ELIMINAR UNA ANOMALIA DE 3FN, SE DEBERA CREAR OTRA RELACION, QUE TENDRA COMO LLAVE EL ATRIBUTO, QUE EN LA RELACION ORIGINAL DEFINE FUNCIONALMENTE A OTRO ATRIBUTO, Y COMO ATRIBUTO DESCRIPTOR, EL ATRIBUTO DEPENDIENTE
ALUMNO(Ctrl;Nombre,CodEsp,NomEsp)

CALIF(Ctrl,ClvMat;Cal, Per) MATERIAS(Clvmat;NomMat,Crd)


ALUMNO(Ctrl;Nombre,CodEsp)

ESPECIALIDAD(CodEsp;NomEsp) CALIF(Ctrl,ClvMat;Cal, Per) MATERIAS(Clvmat;NomMat,Crd)

OBSERVE COMO A PARTIR DE UNA RELACION ORIGINAL QUE NO ESTABA NI SIQUIERA EN 1NF
ALUMNO(Ctrl;Nombre,CodEsp,NomEsp, NomMat,Crd,Cal,Per)

HEMOS OBTENIDO 4 TABLAS QUE SI ESTAN EN 3NF


ALUMNO(Ctrl;Nombre,CodEsp)

ESPECIALIDAD(CodEsp;NomEsp) CALIF(Ctrl,ClvMat;Cal, Per)

MATERIAS(Clvmat;NomMat,Crd)
DEBERA NOTARSE QUE EN ESTA TRANSFORMACION NO HA HABIDO PERDIDA DE INFORMACION, NI DE SIGNIFICADO

Dependencias Multivaluadas Dada una relacin R con atributos A,B y C una dependencia multivaluada se cumple en R si y solo si el conjunto de valores correspondientes a un par dado (valor de A, valor de C) en R, depende solo del valor de A y es independiente del valor de C.(los atributos A, B y C pueden ser simples o compuestos). Se representa R.A | R.B Y se puede demostrar que R.A | R.B se cumple si y solo si se cumple R.A | R.B

También podría gustarte