Što je složeni ključ?

U organizacijskoj tehnologiji baze podataka, “ključ” je određeni atribut u tablici koji se koristi za jedinstvenu identifikaciju određenog entiteta. Složeni ključ koristi dva ili više atributa za postizanje istog cilja; samo kada se nađu u tandemu, ovi predmeti označavaju “podudaranje” s ciljnim predmetom. Složeni ključevi općenito se koriste za tablice čija je informacijska struktura previše složena za rad pomoću jednog ključa. Drugi zahtjev složenih ključeva je da nijedan od pojedinačnih odabranih atributa za složeni ključ ne može biti kvalitetan kao jednostavan ključ s jednim atributom sam po sebi.

Jedan od najosnovnijih primjera tablice baze podataka koja zahtijeva složeni ključ je imenik zaposlenika ili učenika. Zamislite da tablica sadrži jedan popis za “Imena” i drugi popis za “Prezimena”. Sama po sebi, ni imena ni prezimena pojedinog studenta ili zaposlenika ne bi bili dovoljni da jamče jedinstvenu identifikaciju, jer je moguće da dvije ili više osoba u bazi podataka imaju podudarna imena ili prezimena. Kada se upari u složeni ključ – koristeći unose “Ime” i “Prezime” za identifikaciju određenog studenta ili zaposlenika – vjerojatnost da svaka kombinacija imena i prezimena budu jedinstvena značajno raste. Dakle, samo složeni ključ imena i prezimena dovoljan je za jedinstvenu identifikaciju svakog pojedinog učenika ili zaposlenika.

Zapamtite da se složeni ključevi trebaju koristiti samo ako “jednostavni” ključ s jednim atributom nije dovoljan. Nastavljajući prethodni primjer, kada bi svaki učenik ili zaposlenik također imao jedinstveni identifikacijski broj, potreba za složenim ključevima bila bi potpuno suvišna. Kad bi se pojedini student ili zaposlenik mogao identificirati samo po broju, ne bi se bilo potrebno zamarati ni imenom ni prezimenom; jedini atribut koji je bitan je identifikacijski broj.

Iako svaki pojedinačni atribut u složenom ključu nije sam po sebi nejedinstven, bilo koji atribut se ipak može odabrati kao strani ključ. Strani ključ povezuje dvije ili više tablica u bazi podataka. Na primjer, uzmite u obzir sveučilišnu bazu podataka u kojoj postoji zasebna tablica za podatke o studentima i podatke o nastavnicima, a kombinacija “Ime” plus “Prezime” koristi se kao složeni ključ u tablici studenata. Ista složena kombinacija tipki “Ime” plus “Prezime” stoga se može koristiti za povezivanje tablica učenika i nastavnika, pružajući pristup između njih.