¡Recomienda este blog!

jueves, 19 de agosto de 2010

FORMA NORMAL DE BOYCE-CODD

Se define en 1974 por Boyce-Codd después de definir las tres primeras formas normales propuestas por Cod.

La Forma Normal de Boyce-Codd tiene más relevancia que la 3ª Forma Normal con lo que toda relación que se encuentre en FNBC está también en 3FN.

Decimos que una tabla esta en forma normal de Boyce-Codd si existen relaciones elementales entre atributos de una misma tabla¹ y estas dependen de la clave primaria² o de cualquier clave alternativa³ (si todo determinante es clave candidata).

Si la clave primaria tiene un solo atributo y está en 3FN, ya está en FNBC.
Ejemplo:
AT = {Cod-L, Cod-M, a ,b}
DEP = {Cod-L -> -> b, {Cod-L, Cod-M -> -> a}
Clave: {Cod-L, Cod-M, a, b}

En el ejemplo procedemos a buscar en qué forma normal se encuentra teniendo en cuenta la anterior definición, vemos que la relación solo posee dependencias multivaluadas, con lo cual al menos esta en FNBC.
Miramos haber si se encuentra en 4FN, y observamos que existen dependencias multivaluadas no determinadas por claves candidatas, con lo que no esta en 4FN. Por ejemplo a esta determinado por los atributos Cod-L y Cod-M no por toda la clave.



1 -> Dependencia Funcional: Pueden ser de una sola clave, de varias, transitivas, multivaluadas y en combinación.
2 -> Clave primaria: Se elige de las claves candidatas para identificar las tuplas (filas) de la relación, si solo hay una clave candidata se elige como primaria.
3 -> Clave alternativa: Son claves candidatas no elegidas.
4 -> Clave Candidata: Conjunto de atributos que identifican de forma inequívoca cada tupla.

5 comentarios:

Anónimo dijo...

WOW super entendible jejejeje gracias por este aporte!!!!

Anónimo dijo...

hola disculpa sabes quien fue boyce... es una tarea porfa!

Iván Durango Blanco. dijo...

Prueba a buscar en Google: Raymond F. Boyce, seguro que encuentras un montón de información.

Unknown dijo...

AT = {Cod-L, Cod-M, a ,b}
DEP = {Cod-L -> -> b, {Cod-L, Cod-M -> -> a}
Clave: {Cod-L, Cod-M, a, b}

Amigo disculpa es que no entiendo esta terminología me podrías explicar que significa cuando se pone Cod-L -> -> b, {Cod-L, Cod-M -> -> a} y AT y dEP se refiere a antes y despues , disculpa es que no tengo conocimiento de base de datos y me estoy iniciando xD

Rosmeryr3 dijo...

gracias por esa info! yo la estoy usando para base de datos en info3 ;)

Publicar un comentario