¿Qué es la Dependencia Funcional?
Una dependencia funcional X->Y en una relación se cumple si dos tuplas que tienen el mismo valor para X también tienen el mismo valor para Y, es decir, X determina Y de forma única.
En la relación EMPLEADO dada en la Tabla 1,
- FD E-ID->E-NAME se mantiene porque para cada E-ID, hay un valor único de E-NAME.
- FD E-ID->E-CITY y E-CITY->E-STATE también son válidos.
- FD E-NAME->E-ID no se cumple porque E-NAME ‘John’ no determina de forma exclusiva el E-ID. Hay 2 E-ID correspondientes a John (E001 y E003).
EMPLEADO
identificación electrónica | NOMBRE ELECTRÓNICO | CIUDAD ELECTRÓNICA | BIENES |
---|---|---|---|
E001 | John | Delhi | Delhi |
E002 | María | Delhi | Delhi |
E003 | John | Noida | ARRIBA |
tabla 1
El conjunto de FD para la relación EMPLEADO dado en la Tabla 1 es:
{E-ID->E-NAME, E-ID->E-CITY, E-ID->E-STATE, E-CITY->E-STATE}
Dependencia funcional trivial versus no trivial: una dependencia funcional trivial es la que siempre se mantendrá en una relación.
X->Y will always hold if X ⊇ Y
En el ejemplo anterior, E-ID, E-NAME->E-ID es una dependencia funcional trivial y siempre se mantendrá porque {E-ID,E-NAME} ⊃ {E-ID}. También puede ver en la tabla que para cada valor de {E-ID, E-NAME}, el valor de E-ID es único, por lo que {E-ID, E-NAME} determina funcionalmente el E-ID.
Si una dependencia funcional no es trivial, se denomina dependencia funcional no trivial . La dependencia funcional no trivial puede o no mantenerse en una relación. p.ej; E-ID->E-NAME es una dependencia funcional no trivial que se cumple en la relación anterior.
Propiedades de las dependencias funcionales
Sean X , Y y Z conjuntos de atributos en una relación R . Hay varias propiedades de las dependencias funcionales que siempre se cumplen en R, también conocidas como axiomas de Armstrong.
- Reflexividad : Si Y es un subconjunto de X , entonces X → Y. ej.; Deje que X represente {E-ID, E-NAME} e Y represente {E-ID}. {E-ID, E-NAME}->E-ID es verdadero para la relación.
- Aumento : si X → Y , entonces XZ → YZ. p.ej; Deje que X represente {E-ID}, Y represente {E-NAME} y Z represente {E-CITY}. Como {E-ID}->E-NAME es verdadero para la relación, {E-ID,E-CITY}->{E-NAME,E-CITY} también lo será.
- Transitividad : si X → Y e Y → Z , entonces X → Z. p. ej.; Deje que X represente {E-ID}, Y represente {E-CITY} y Z represente {E-STATE}. Como {E-ID} ->{E-CITY} y {E-CITY}->{E-STATE} son verdaderos para la relación, { E-ID }->{E-STATE} también lo serán.
- Cierre de Atributo: El conjunto de atributos que son funcionalmente dependientes del atributo A se denomina Cierre de Atributo de A y se puede representar como A + .
Pasos para encontrar el cierre de atributo de A
P. Dado el conjunto FD de una Relación R, el conjunto de cierre de atributos S será el conjunto de A
- Añadir A a S.
- Agregue recursivamente atributos que pueden determinarse funcionalmente a partir de los atributos del conjunto S hasta que finalice.
De la Tabla 1, los FD son
Dado R( E-ID , E-NAME, E-CITY, E-STATE)
FDs = { E-ID->E-NAME, E-ID->E-CITY, E-ID->E-STATE, E-CITY->E-STATE }
El cierre de atributo de E-ID se puede calcular como:
- Agregar E-ID al conjunto {E-ID}
- Agregue atributos que se pueden derivar de cualquier atributo del conjunto. En este caso, E-NAME y E-CITY, E-STATE pueden derivarse de E-ID. Así que estos también son parte del cierre.
- Como queda otro atributo pendiente en relación con el E-ID. Entonces el resultado es:
(E-ID)+ = {E-ID, E-NAME, E-CITY, E-STATE }
Similarmente,
(E-NAME)+ = {E-NAME} (E-CITY)+ = {E-CITY, E_STATE}
P. Encuentre los cierres de atributos de los FD dados R(ABCDE) = {AB->C, B->D, C->E, D->A} Para encontrar (B) + , agregaremos atributos en el conjunto usando varios FD que se muestra en la siguiente tabla.
Atributos agregados en el cierre | FD usado |
---|---|
{B} | Trivialidad |
{B,D} | B->D |
{B,D,A} | D->A |
{B,D,A,C} | AB->C |
{B,D,A,C,E} | C->E |
- Podemos encontrar (C, D) + sumando C y D al conjunto (trivialidad) y luego E usando (C->E) y luego A usando (D->A) y el conjunto se vuelve.
(C,D)+ = {C,D,E,A}
- De manera similar podemos encontrar (B,C) + sumando B y C al conjunto (trivialidad) y luego D usando (B->D) y luego E usando (C->E) y luego A usando (D->A ) y el conjunto se convierte en
(B,C)+ ={B,C,D,E,A}
Llave candidata
La clave candidata es un conjunto mínimo de atributos de una relación que se puede usar para identificar una tupla de manera única. Por ejemplo, cada tupla de la relación EMPLEADO dada en la Tabla 1 puede identificarse de forma única mediante E-ID y también es mínima. Entonces será clave Candidata de la relación.
Una clave candidata puede o no ser una clave primaria.
Súper llave
Super clave es un conjunto de atributos de una relación que se puede utilizar para identificar una tupla de forma única. Por ejemplo, cada tupla de la relación EMPLEADO que figura en la Tabla 1 se puede identificar de forma única por E-ID o (E-ID, E-NAME) o (E-ID, E-CITY) o (E-ID, E-STATE) o (E_ID, E-NAME, E-STATE), etc. Todas estas son súper claves de la relación EMPLEADO.
Note: A candidate key is always a super key but vice versa is not true.
Q. Búsqueda de claves candidatas y superclaves de una relación mediante el conjunto FD El conjunto de atributos cuyo cierre de atributo es un conjunto de todos los atributos de la relación se denomina superclave de relación. Por ejemplo, la relación EMPLEADO que se muestra en la Tabla 1 tiene el siguiente conjunto FD. {E-ID->E-NAME, E-ID->E-CITY, E-ID->E-STATE, E-CITY->E-STATE} Calculemos el cierre de atributos de diferentes conjuntos de atributos:
(E-ID)+ = {E-ID, E-NAME,E-CITY,E-STATE} (E-ID,E-NAME)+ = {E-ID, E-NAME,E-CITY,E-STATE} (E-ID,E-CITY)+ = {E-ID, E-NAME,E-CITY,E-STATE} (E-ID,E-STATE)+ = {E-ID, E-NAME,E-CITY,E-STATE} (E-ID,E-CITY,E-STATE)+ = {E-ID, E-NAME,E-CITY,E-STATE} (E-NAME)+ = {E-NAME} (E-CITY)+ = {E-CITY,E-STATE}
Como (E-ID) + , (E-ID, E-NAME) + , (E-ID, E-CITY) + , (E-ID, E-STATE) + , (E-ID, E-CITY, E-STATE) + da un conjunto de todos los atributos de la relación EMPLEADO. Así que todas estas son súper claves de relación.
El conjunto mínimo de atributos cuyo cierre de atributo es el conjunto de todos los atributos de relación se denomina clave candidata de relación. Como se muestra arriba, (E-ID) + es un conjunto de todos los atributos de la relación y es mínimo. Entonces E-ID será la clave candidata. Por otro lado (E-ID, E-NAME) + también es un conjunto de todos los atributos pero no es mínimo porque su subconjunto (E-ID) + es igual al conjunto de todos los atributos. Entonces (E-ID, E-NAME) no es una clave candidata.
Artículo aportado por Sonal Tuteja. Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.
Publicación traducida automáticamente
Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA