. Objetivos
|
. Respecto a los datos:
Reducir inconsistencias y redundancias de los datos, evitar anomalías en sus manipulaciones,
y reducir el impacto en sus cambios
. Facilitar el
mantenimiento de los datos y programas
|
||||||
. Conceptos básicos de dependencia funcional de atributos de
la misma entidad
|
. Dependencia funcional
|
. B depende
funcionalmente de A (se representa AàB) si cada valor de A se corresponde con
un único valor de B
. Es decir, dado A
puedo obtener B
. P.e. si
dado un DNI puedo obtener el nombre de la persona con ese DNI: DNI à Nombre
|
|||||
. Dependencia funcional completa
|
. B tiene dep. func.
completa de un grupo de atributos A, si depende funcionalmente de A, pero no
de ningún subcjto de A
. Es decir, A es el mínimo cjto de atributos de los que
depende B (si se añade/quita algún atributo, B ya no depende func.)
. P.e. si una empresa tiene empleados, y una persona
puede ser empleado de varias empresas, hay varias dependencias:
. Para saber el
sueldo de un empleado, necesitamos saber a qué empresa pertenece, es decir,
el sueldo depende del DNI y del identificador de la empresa: DNI.EMPRESAàSUELDO es una dependencia
funcional total
. Nombre depende
funcionalmente de DNI y de Empresa (DNI.EMPRESAàNOMBRE), pero esta dependencia
NO es total, porque en realidad también se puede identificar totalmente al
empleado solo a través del DNI: DNIàNOMBRE
|
||||||
. Dependencia transitiva de tres atributos (o grupo de atributos)
A, B y C de una relación; C dependerá transitivamente de A si…
|
. B depende
funcionalmente de A
. C depende
funcionalmente de B
. A no depende
funcionalmente de B
|
P.e. DNIàNOMBRE,
y NOMBREàDIRECCIÓN,
por tanto, DNIàDIRECCIÓN
|
|||||
. Procedimiento de Normalización
|
. Relación en 1ª Forma Normal (1FN): una entidad está en 1FN si..
|
. Sus atributos
contienen valores atómicos
. Es decir, no contiene
grupos repetitivos (*)
(*) Ningún atributo puede
tomar más de 1 valor
. Todos los atrib’s
dependen funcionalmente de la clave
|
Si un atributo A viola
la condición de 1FN, tenemos dos opciones..
|
. Duplicar registros con valores repes*
(*) Añadiendo a clave
valores no repes
. Separar el atrib A a otra tabla (**)
(*) La clave se
“arrastra” a la otra tabla
|
|||
. Relación en 2ª Forma Normal (2FN): una entidad está en 2FN si..
|
. Está en 1FN
. Todo atrib no clave
tiene dep. func. completa de clave
. I.e.,para determinar
atrib no clave no valen ”subclaves”
|
Para grupos de
atributos A con dep. incompleta ..
|
1.Eliminar de la
relación el atrib A
2.Nueva relación con A
y parte de clave
3.Clave en nueva
relación es esa parte
|
||||
. 2FN se aplica a relaciones
con claves de más de 2 atribsàUna relación 1FN con clave simple (1 atrib), siempre es 2FN
. En general, tendremos
que observar atributos no clave que puedan depender de parte de la clave
|
|||||||
. Relación en 3ª Forma Normal (3FN): una entidad está en 3FN si..
|
. Está en 2FN
. Todo atrib no clave
no depende transitivamente de clave
. I.e.,cada atrib de la
entidad depende solo de la clave
|
Dado 2FN,las
dependencias func entre atributos no clave,son problemas 3FN: los separamos a
tabla(s) adicional(es); la clave allí será el atributo que define la
transitividad
|
Barra de menus (paginas)
domingo, 13 de julio de 2014
NORMALIZACION
Suscribirse a:
Enviar comentarios (Atom)
No hay comentarios:
Publicar un comentario