Curso BD (05-3) Normalización
-
Upload
javier-jaime-villaizan-morales -
Category
Documents
-
view
231 -
download
0
description
Transcript of Curso BD (05-3) Normalización
-
Un esquema de relacin esta en BCNF, si para toda
dependencia funcional X Y que se cumple en R ,
Es condicin que X sea una super clave de R.
EJEMPLO : Se tiene el siguiente esquema donde se distinguen todas las dependencias :
Empleado ( codEm, nss, sueldo, codDpto, nomDpto)
-
Empleado ( codEm, nss, sueldo, codDpto, nomDpto)
La primera dependencia :
Se puede afirmar que codEm es una superclave
Empleado ( codEm, nss, sueldo, codDpto, nomDpto)
La segunda dependencia :
Se puede afirmar que nss es una superclave
-
Empleado ( codEm, nss, sueldo, codDpto, nomDpto)
La tercera dependencia :
Se puede afirmar que codDpto no es una superclave
Esta dependencia funcional viola la BCNF
SOLUCION : debemos descomponer el esquema :
Empleado ( codEm, nss, sueldo, codDepa )
Departamento ( codDpto, nomDpto)
-
Empleado ( codEm, nss, sueldo, codDepa )
Departamento ( codDpto, nomDpto)
Ya no hay problema, se cumple la condicin
Aqu tambin se cumple la condicin
-
EJEMPLO : Considere que cada proyecto tiene un administrador y que cada uno maneja un solo proyecto :
Proyecto administrador Articulo cantUsada
P1 Castro Martillo 10
P1 Castro Taladro 20
P2 Garcia Taladro 30
P2 Garcia Sierra 22
P3 Meneses Martillo 15
-
UsoProy ( proyecto, administrador, articulo, cantUsada )
Identifiquemos las dependencias :
{administrador, articulo} es una superclave
UsoProy ( proyecto, administrador, articulo, cantUsada )
{proyecto, articulo} es una superclave
-
UsoProy ( proyecto, administrador, articulo, cantUsada )
Aqu hay dos dependencias funcionales :
Administrador proyecto
proyecto Administrador
Pero ni administrador ni proyecto son superclaves, por tanto violan
la BCNF
SOLUCION : debemos descomponer el esquema :
Uso ( proyecto, articulo, cantUsada )
proyecto ( proyecto, administrador )
-
Uso ( proyecto, articulo, cantUsada )
{proyecto, articulo} cantUsada
Es una superclave
proyecto ( proyecto, administrador )
Entonces ambos estn en BCNF