Saltar al contenido

Dependencia funcional y normalización

Solución:

Una dependencia funcional define una relación funcional entre atributos. Por ejemplo: PersonId determina funcionalmente BirthDate (normalmente escrito como PersonId -> BirthDate). Otra forma de decir esto es: hay exactamente una fecha de nacimiento para cualquier instancia determinada de una persona. Tenga en cuenta que lo contrario puede ser cierto o no. Es posible que muchas personas hayan nacido el mismo día. Dado un BirthDate podemos encontrar muchos PersonId compartiendo esa fecha.

Se pueden usar conjuntos de dependencias funcionales para sintetizar relaciones (tablas). La definición de las primeras 3 formas normales, incluida la forma normal de Boyce Codd (BCNF), se establece en términos de cómo un conjunto dado de relaciones representa las dependencias funcionales. Las formas normales cuarta y quinta implican dependencias de valores múltiples (otra olla de pescado).

Aquí hay algunos recursos gratuitos sobre dependencias funcionales, normalización y diseño de bases de datos. Esté preparado para ejercitar su cerebro y sus habilidades matemáticas al estudiar este material.

Las siguientes son “presentaciones de diapositivas” de varios sitios académicos …

  • Dependencias funcionales
  • Dependencias funcionales y normalización para bases de datos relacionales
  • El modelo de datos relacionales: teoría de la dependencia funcional

Los siguientes son trabajos académicos. Lectura más pesada pero vale la pena el esfuerzo.

  • La aplicación de la teoría de la dependencia funcional a las bases de datos relacionales
  • Una guía simple de cinco formas normales en una base de datos relacional
  • Condiciones simples para garantizar formas normales superiores en bases de datos relacionales

Si está realmente interesado en este tema, le sugiero que saque el dinero en efectivo para un buen libro sobre el tema del diseño de bases de datos relacionales. Por ejemplo: Introducción a los sistemas de bases de datos por CJ Date

Una dependencia funcional es una restricción entre las columnas de su tabla. Por ejemplo en la persona de la mesa:

SSN         | Name         | Date of birth | Address     | Phone number 
------------------------------------------------------------------------
123-98-1234 | Cindy Cry    | 15-05-1983    | Los Angeles | 123-456-7891
121-45-6145 | John O'Neill | 30-01-1980    | Paris       | 568-974-2562
658-78-2369 | John Lannoy  | 30-01-1980    | Dallas      | 963-258-7413

Aquí, el valor en la columna SSN (Número de Seguro Social) determina los valores en las columnas nombre, fecha de nacimiento, dirección y número de teléfono. Esto significa que si tuviéramos dos filas con el mismo valor en la columna SSN, luego los valores en las columnas nombre, fecha de nacimiento, dirección y número de teléfono sería igual. Una persona con SSN 123-98-1234 siempre se llama Cindy Cry, nace el 15-05-1983, etc. Una situación como esta se llama dependencia funcional.

La noción de dependencias funcionales se utiliza para definir la segunda y tercera forma normal, y la forma normal de Boyce-Codd (BCNF).

Para leer más sobre las dependencias funcionales y la normalización, puede consultar libros académicos conocidos como Introducción a las bases de datos de CJ Date, o cualquiera de los libros del trío H. García-Molina, J.Ullman, J.Widom.

Si desea un enfoque menos formal, comenzamos una serie de publicaciones sobre normalización de datos en el blog de nuestra empresa.

Podemos entender la dependencia funcional de una manera que asumimos que tenemos dos atributos y un atributo totalmente dependiente del otro se llama dependencia funcional.

Diga, tome un ejemplo de la vida real. Sabemos que todo el mundo tiene un número de seguro social junto al nombre de la persona. Digamos que Frank es una persona y queremos saber el número de seguro social de esta persona, pero la base de datos no podrá ayudar con esta información porque puede haber muchas personas llamadas frank, pero podemos determinar el nombre de la persona contra el número de seguro social, así que el nombre de la persona es totalmente funcional dependiente del número de seguro social.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *