A kulcsok a relációs adatbázis alapvető elemei, mivel kapcsolatot hoznak létre egy pár tábla között, és biztosítják, hogy a táblák minden rekordja egyedileg azonosítható legyen. A kulcsoknak különösebb jelentősége van, mint a kapcsolatok létesítéséhez; segítenek a referencia-integritásban is, és a táblázat szintű integritásának fő alkotóelemei. A táblák hatalmas darabokat tárolnak benne, amelyek általában több ezer rekordra terjednek ki, amelyek mindegyike válogatás nélküli és rendezetlen. Bizonyos adatoknak a számtalan rekordból való beolvasása időnként nehéz lehet, vagy néha lehetetlen. Itt jelennek meg a kulcsok képei. Itt tanulmányozzuk a relációs adatbázis séma két nagyon fontos kulcsát és azok közötti különbséget: Elsődleges kulcs és idegen kulcs.
Az elsődleges kulcs egy speciális kulcs, amely egyedileg azonosítja a táblázat minden rekordját. A relációs adatbázisban nagyon fontos, hogy a tábla mindegyik sorában egyedi azonosító legyen, és az elsődleges kulcs csak a dolog, amire szükség van a táblázatban szereplő összes elem egyedi azonosításához. A páros értéke attribútumok halmazát képviseli egy relációs adatbázisban. Az elsődleges kulcs hivatkozhat egy oszlopra vagy oszlopkészletre egy relációs adatbázis-táblázatban, amelyet a táblázat összes rekordjának hallgatólagos azonosítására használnak. Az elsődleges kulcsnak minden rekordhoz egyedinek kell lennie, mivel egyedi azonosítóként működik, és nem tartalmazhat Null értékeket. Minden adatbázisnak tartalmaznia kell egy és csak egy elsődleges kulcsot.
Az idegen kulcs olyan mezőre vagy mezőkre utal, amelyek az adatbázis-rekordban egyedileg azonosítják egy másik adatbázisrekord kulcsmezőjét egy másik táblázatban. Egyszerűen fogalmazva megteremti a kapcsolatot az adatbázis két különböző táblájában lévő rekordok között. Ez egy oszlop lehet egy táblázatban, amely az elsődleges kulcs oszlopokra mutat, vagyis a táblázatban meghatározott idegen kulcs utal valamilyen más táblázat elsődleges kulcsára. A hivatkozások kulcsfontosságúak a relációs adatbázisokban az adatok közötti kapcsolatok létrehozása szempontjából, ami elengedhetetlen az adatbázisok rendezéséhez. Az idegen kulcsok fontos szerepet játszanak a relációs adatbázis normalizálásában, különösen akkor, ha a tábláknak más táblákhoz kell hozzáférniük.
Az elsődleges kulcs egy speciális kulcs egy relációs adatbázisban, amely minden egyes rekord egyedi azonosítójaként működik, vagyis egyedileg azonosítja a táblázat minden sorát / rekordját, és értékének a táblázat minden sorában egyedinek kell lennie. Az idegen kulcs viszont az egyik táblában lévő mező, amely két táblát összekapcsol. Oszlopra vagy oszlopcsoportra utal, amely egyértelműen azonosítja egy másik táblázat vagy ugyanazon táblázat sorát.
Az elsődleges kulcs egyedileg azonosítja a rekordot a relációs adatbázis táblában, míg az idegen kulcs a tábla mezőjére vonatkozik, amely egy másik tábla elsődleges kulcsa. Az elsődleges kulcsnak egyedinek kell lennie, és csak egy elsődleges kulcs megengedett a táblázatban, amelyet meg kell határozni, míg egynél több idegen kulcs engedélyezett.
Az elsődleges kulcs az UNIQUE és a Not Null korlátozások kombinációja, így nem engedhető meg, hogy másolatú értékek legyenek egy relációs adatbázis-táblázat elsődleges kulcs mezőjében. Két sorban nem lehet másodlagos értékeket hordozni az elsődleges kulcs-attribútumhoz. Az elsődleges kulccsal ellentétben az idegen kulcs ismétlődő értékeket tartalmazhat, és egy relációs adatbázisban lévő táblázat nem csak idegen kulcsot tartalmazhat.
Az egyik fő különbség a kettő között az, hogy az elsődleges kulcsokkal ellentétben az idegen kulcsok NULL értékeket is tartalmazhatnak. A relációs adatbázisban lévő táblázatnak csak egy elsődleges kulcsa lehet, amely nem engedélyezi a NULL értékeket.
Az elsődleges kulcs korlátozása implicit módon meghatározható az ideiglenes táblázatokon és azok változóin, míg az idegen kulcs korlátozást nem lehet érvényesíteni a helyi vagy a globális ideiglenes táblákon..
Az elsődleges kulcs értékét nem lehet törölni a szülőtáblából, amelyet idegen kulcsnak neveznek a gyermektáblában. A szülőtábla eltávolítása előtt először törölnie kell a gyermektáblát. Éppen ellenkezőleg, egy idegen kulcs értékét törölni lehet az utódtáblából, még akkor is, ha az értéket a szülőtábla elsődleges kulcsára utalják..
A kulcsok kulcsfontosságú szerepet játszanak az adatbázis-séma létezésében a táblák közötti és a táblázatok közötti kapcsolatok létrehozása érdekében. A kulcsok kapcsolatot létesítenek és különféle típusú integritást érvényesítenek, különösen az asztali és a kapcsolat szintű integritást. Egyrészről megbizonyosodnak arról, hogy a táblázat egyedi rekordokat tartalmaz-e, és a táblák közötti kapcsolat létrehozásához használt mezőknek tartalmazniuk kell egyező értékeket. Az elsődleges kulcs és az idegen kulcs a két legfontosabb és leggyakoribb kulcs, amelyet a relációs adatbázisokban használnak. Az elsődleges kulcs egy speciális kulcs, amely egy táblában szereplő rekordok egyedi azonosítására szolgál, míg egy idegen kulcs a két tábla közötti kapcsolat létrehozására szolgál. Mindkettő szerkezetében azonos, de a relációs adatbázis sémájában eltérő szerepe van.