- Forma normal de Boyce-Codd
-
Forma normal de Boyce-Codd
La Forma Normal de Boyce-Codd (o FNBC) es una forma normal utilizada en la normalización de bases de datos. Es una versión ligeramente más fuerte de la Tercera forma normal (3FN). La forma normal de Boyce-Codd requiere que no existan dependencias funcionales no triviales de los atributos que no sean un conjunto de la clave candidata. En una tabla en 3FN, todos los atributos dependen de una clave, de la clave completa y de ninguna otra cosa excepto de la clave (excluyendo dependencias triviales, como ). Se dice que una tabla está en FNBC si y solo si está en 3FN y cada dependencia funcional no trivial tiene una clave candidata como determinante. En terminos menos formales, una tabla está en FNBC si está en 3FN y los únicos determinantes son claves candidatas.
Contenido
Ejemplo
Solamente en casos raros una tabla en 3NF no satisface los requerimientos de la BCNF. Un ejemplo de tal tabla es (teniendo en cuenta que cada estudiante puede tener más de un tutor):
Referencia cruzada de Tutor/Estudiante ID Tutor Número de seguro social del tutor ID Estudiante 1078 088-51-0074 31850 1078 088-51-0074 37921 1293 096-77-4146 46224 1480 072-21-2223 31850 El propósito de la tabla es mostrar qué tutores están asignados a qué estudiantes. Las claves candidatas de la tabla son:
- {ID Tutor, ID Estudiante}
- {Número de seguro social del tutor, ID Estudiante}
Por lo tanto los tres atributos de la tabla son atributos primarios, es decir, los tres atributos pertenecen a las claves candidatas.
Recuerde que la 2NF prohíbe dependencias funcionales parciales de atributos no-primarios en las claves candidatas, y la 3NF prohíbe dependencias funcionales transitivas de atributos no-primarios en claves candidatas. Dado que la tabla de arriba carece de cualquier atributo no-primario, está en 2NF y 3NF.
La FNBC es más rigurosa que la 3NF en que no permite ninguna dependencia funcional en la cual el conjunto determinante de atributos no sea una clave candidato (o superconjunto de eso). La dependencia de ID Tutor en Número de seguro social del tutor es ese tipo de dependencia. Por consiguiente, la tabla de arriba no está en FNBC
Cualquier tabla que sea insuficiente en FNBC será vulnerable a inconsistencias lógicas. En la tabla de arriba podía ser representada una combinación inconsistente de ID Tutor y Número de seguro social del tutor.
En este caso, corregir el problema sería una simple cuestión de usar solo un esquema de identificación para los tutores: o el ID, o el número del seguro social, pero no ambos.
Referencias
Lectura adicional
- Date, C. J. (1999), An Introduction to Database Systems (8th ed.). Addison-Wesley Longman. ISBN 0-321-19784-4.
Véase también
- 1NF - 2NF - 3NF - BCNF - 4NF - 5NF - DKNF - Denormalización
Enlaces externos
- Rules Of Data Normalization
- Advanced Normalization by ITS, University of Texas.
Categoría: Normalización de bases de datos
Wikimedia foundation. 2010.