Kandidat za ključ

U relacionom modelu, kandidat za ključ neke relacije je skup atributa te relacije, takav da

  • (1) za datu relaciju uvek važi da ne postoje dve različite vrste (kao vrste tabele) relacije, takve da su im vrednosti kandidata za ključ jednake, i
  • (2) ne postoji pravi podskup za koji (1) važi.

Kako je superključ definisan kao skup atributa za koje važi (1), možemo takođe da definišemo kandidata za ključ kao minimalni superključ, to jest, superključ koji nema pravi podskup koji je takođe superključ.

Primer uredi

Sledi primer relacionog kandidata za ključ.

Definicija kandidata za ključ se može ilustrovati sledećim (apstraktnim) primerom. Posmatrajmo relaciju R sa atributima (A, B, C, D), koja može da ima samo dve sledeće vrednosti r1 i r2:

r1
A B C D
a1 b1 c1 d1
a1 b2 c2 d1
a2 b1 c2 d1
r2
A B C D
a1 b1 c1 d1
a1 b2 c2 d1
a1 b1 c2 d2

Ovde se r2 razlikuje od r1 samo u vrednostima A i D u poslednjoj vrsti.

Za r1 sledeći skupovi imaju svojstvo jedinstvensoti, to jest, ne postoje dve vrste u toj instanci relacije sa istim vrednostima za atribute u tom skupu:

{A,B}, {A,C}, {B,C}, {A,B,C}, {A,B,D}, {A,C,D}, {B,C,D}, {A,B,C,D}

Za r2 sledeći skupovi imaju svojstvo jedinstvenosti;

{B,D}, {C,D}, {B,C}, {A,B,C}, {A,B,D}, {A,C,D}, {B,C,D}, {A,B,C,D}

Kako su superključevi relacije oni skupovi atributa koji imaju svojstvo jedinstvenosti za sve dozvoljene vrednosti relacije, i pošto pretpostavljamo da su r1 i r2 jedine (sve) dozvoljene vrednosti relacije R, možemo odrediti skup superključeva R pronalaženjem preseka dva spiska:

{B,C}, {A,B,C}, {A,B,D}, {A,C,D}, {B,C,D}, {A,B,C,D}

Konačno, uzimamo one skupove koji u ovom spisku nemaju prave podskupove. To su u ovom slučaju:

{B,C}, {A,B,D}, {A,C,D}

Oni su kandidati za ključ relacije R.

Vidi još uredi