Número de posibles superclaves en DBMS – Part 1

Requisito previo: introducción al modelo relacional y reglas de Codd 

Cualquier conjunto de atributos de una tabla que pueda identificar de forma única todas las tuplas de esa tabla se conoce como Superclave . Es diferente de las claves principales y candidatas en el sentido de que solo las superclaves mínimas son las claves candidatas/principales. 

Esto significa que de una súper clave cuando eliminamos todos los atributos que son innecesarios para su unicidad, solo entonces se convierte en una clave principal/candidata . Entonces, en esencia, todas las claves primarias/candidatas son súper claves, pero no todas las súper claves son claves primarias/candidatas. Por la definición formal de una Relación(Tabla), sabemos que las tuplas de una relación son todas únicas. Entonces, el conjunto de todos los atributos en sí mismo es una súper clave. 

Contar el número posible de superclaves para una tabla es una pregunta común para GATE . Los ejemplos a continuación demostrarán todos los tipos posibles de preguntas sobre este tema. 

  • Ejemplo-1: Deje que una Relación R tenga los atributos {a1,a2,a3} y a1 es la clave candidata. Entonces, ¿cuántas súper llaves son posibles? 

    Aquí, cualquier superconjunto de a1 es la superclave. 
    Las superclaves son = {a1, a1 a2, a1 a3, a1 a2 a3} 
    Así vemos que en este caso son posibles 4 superclaves. 

    En general, si tenemos atributos ‘N’ con una clave candidata, entonces el número de superclaves posibles es 2 (N – 1)
     

  • Ejemplo-2: Deje que una Relación R tenga atributos {a1, a2, a3,…,an}. Encuentra Super clave de R. 
    Máximo de Super claves = 2 n – 1. 
    Si cada atributo de relación es clave candidata. 

     

  • Ejemplo-3: Deje que una relación R tenga atributos {a1, a2, a3,…, an} y la clave candidata es «a1 a2 a3», ¿entonces el número posible de superclaves? 

    Siguiendo la fórmula anterior, tenemos 3 atributos en lugar de uno. Entonces, aquí el número de superclaves posibles es 2 (N-3)
     

  • Ejemplo-4: Deje que una relación R tenga atributos {a1, a2, a3,…, an} y las claves candidatas son «a1», «a2», entonces, ¿cuál es el número posible de superclaves? 

    Este problema ahora es ligeramente diferente ya que ahora tenemos dos claves candidatas diferentes en lugar de solo una. Abordar problemas como estos se muestra en el siguiente diagrama: 

     

  • → |A1 ∪ A2| = |A1| + |A2| – |A1 ∩ A2| 

    = (superclaves posibles con la clave candidata A1) + (superclaves posibles con la clave candidata A2) – (superclaves comunes de A1 y A2) 

    = 2 (n-1) + 2 (n-1) – 2 (n-2) 

     

  • Ejemplo-5: Deje que una relación R tenga atributos {a1, a2, a3,…, an} y las claves candidatas son «a1», «a2 a3», entonces, ¿cuál es el número posible de superclaves? 

    Súper teclas de (a1) + Súper teclas de (a2 a3) – Súper teclas de (a1 a2 a3) 
    ⇒ 2 (n – 1) + 2 (n – 2) – 2 (n – 3) 

     

  • Ejemplo-6: Deje que una relación R tenga atributos {a1, a2, a3,…, an} y las claves candidatas son «a1 a2», «a3 a4», entonces, ¿cuál es el número posible de superclaves? 

    Súper teclas de(a1 a2) + Súper teclas de(a3 a4) – Súper teclas de(a1 a2 a3 a4) 
    ⇒ 2 (n – 2) + 2 (n – 2) – 2 (n – 4) 

     

  • Ejemplo-7: Deje que una relación R tenga atributos {a1, a2, a3,…, an} y las claves candidatas son «a1 a2», «a1 a3», entonces, ¿cuál es el número posible de superclaves? 

    Súper teclas de (a1 a2) + Súper teclas de (a1 a3) – Súper teclas de (a1 a2 a3) 
    ⇒ 2 (n – 2) + 2 (n – 2) – 2 (n – 3) 

     

  • Ejemplo-8: Deje que una relación R tenga atributos {a1, a2, a3,…,an} y las claves candidatas son «a1», «a2», «a3», entonces, ¿cuál es el número posible de superclaves? 

    En esta pregunta, tenemos 3 claves candidatas diferentes. El abordaje de problemas como estos se muestra en el siguiente diagrama. 

     

  • → |A1 ∪ A2 ∪ A3| = |A1| + |A2| + |A3| – |A1 ∩ A2| – |A1 ∩ A3| – |A2 ∩ A3| + |A1 ∩ A2 ∩ A3| 

    = (superclaves posibles con la clave candidata A1) + (superclaves posibles con la clave candidata A2) + (superclaves posibles con la clave candidata A3) – (superclaves comunes de A1 y A2) – (superclaves comunes de A1 y A3) – (superteclas comunes de A2 y A3) + (superteclas comunes de A1, A2 y A3) 

    = 2 (n-1) + 2 (n-1) + 2 (n-1) – 2 (n-2) – 2 (n-2) – 2 (n-2) + 2 (n-3) 

     

  • Ejemplo-9: Una relación R (A, B, C, D, E, F, G, H) y un conjunto de dependencias funcionales son 
    CH → G, 
    A → BC, 
    B → CFH, 
    E → A, 
    F → EG 
    Entonces ¿Cuántas superclaves posibles hay presentes? 

    Paso 1:- En primer lugar, tenemos que encontrar cuáles son las claves candidatas:- 
    como podemos ver en la dependencia funcional dada, falta D, pero en relación, D se da, por lo que D debe ser un atributo principal de la clave candidata. 

    A + = E + = B + = F + = todos los atributos de una relación excepto D 
    Entonces, las claves candidatas son = AD, BD, ED, FD 

    Paso 2: – Encuentre súper claves debido a una sola clave candidata, 
    hay dos posibilidades de atributo, ya sea que seleccionemos o no, por lo tanto, habrá 2 posibilidades, entonces, 
    A_ _D_ _ _ _ = _ B_ D_ _ _ _ = _ _ _ DE _ _ _ = _ _ _ D_F_ _ = 2 6 

    Paso 3: – Encuentre superclaves debido a una combinación de dos claves candidatas. 
     Entonces, n(AD ∩ BD) = n(AD ∩ ED) = n(AD ∩ FD) = n(BD ∩ ED) = n(BD ∩ FD) = n(ED ∩ FD) = 2 5 

    Paso 4:- Encuentre superclaves debido a la combinación de 3 claves candidatas 
    Entonces, 
    n(AD ∩ BD ∩ ED) = n(AD ∩ ED ∩ FD) = n(ED ∩ BD ∩ FD) = n(BD ∩ FD ∩ AD ) = 2 4 

    Paso 5:- Encuentre súper claves debido a todo, 
    Entonces, n(AD ∩ BD ∩ ED ∩ FD) = AB_DEF_ _ = 2 3 

    Entonces, según el principio de inclusión-exclusión:- 
    |W ∪ X ∪ Y ∪ Z| = |W| + |X| + |Y| + |Z| – |W ∩X| – |W ∩ Y| – |W ∩Z| – |X ∩Y| – |X ∩Z| – |Y ∩ Z| + |W ∩ X ∩ Y| + |W ∩ X ∩ Z| + |W ∩ Y ? Z| + |X ∩ Y ∩ Z| – |W ∩ X ∩ Y ∩ Z| 

    # Súper teclas = 4 * 2 6 – 6 * 2 5 + 4 * 2 4 – 2 3 = 120 

    Entonces, el número de súper llaves es 120. Esta explicación es aportada por YaduvanshiRishi.
     

  • Ejemplo 10: Sea una Relación R con los atributos {a1,a2,a3______ an} y {a1a2a3____ak} como clave candidata donde k<=n. Entonces, ¿cuántas súper llaves son posibles?
    El número posible de superclaves es 2 (nk) .

Publicación traducida automáticamente

Artículo escrito por Siddhant-Bajaj y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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