Legyen R(A1, A2, ..., An) egy reláció és legyenek P, Q az A attribútumhalmaz részhalmazai Azt mondjuk, hogy P funkcionálisan meghatározza Q-t, vagyis Q funkcionálisan függ P-tol, ha abból, hogy a reláció valamely két sora megegyezik P halmazon, következik, hogy a két sor értékei megegyeznek a Q halmazon is. A P attribútum-részhalmaz funkcionálisan meghatározza a Q attribútumhalmazt, ha minden P-hez tartozó értékhez pontosan egy Q-hoz tartozó értéket tudunk hozzárendelni. A kulcs és a reláció többi attribútuma között funkcionális függoség áll fenn. A kulcsok szerepe alapveto fontosságú a normalizálás folyamatában.
Elsodleges kulcs: A relációban kell lennie egy vagy több olyan attribútumnak, amelyeket a sorok egyedi azonosítójaként lehet használni.
Kulcsjelölt: Bármely olyan attribútum halmaz, amelyet egyedi azonosítóként lehet használni.
Egyszerû kulcs: Olyan kulcsjelölt, mely egyetlen attribútumból áll.
Összetett kulcs: Ha egy kulcsjelölt két vagy több olyan elembol áll, amelyek mindegyike más relációk elemei, attribútumai, azt összetett kulcsnak nevezzük. Ezzel lehet kifejezni a sok-sok kapcsolatot két reláció vagy entitás között.
Hierarchikus kulcs: Olyan kulcs, amelynek legalább egy olyan összetevoje van, amely önmagában véve nem azonosít semmit. Gyakran szolgál egy ismétlodo csoport egyes elemeinek egyedi azonosítására.
Idegen kulcs: Más egyedtípusban elsodleges kulcsként használt tulajdonságtípus.
Az elsõdleges kulcs (primary key)szerepe:
A táblázat sorainak egyértelmû azonosítására szolgál.
Elõfordul, hogy két vagy több oszlopra van szükségünk az egyértelmû azonosításhoz.
Az elsõdleges kulcs választásánál ügyelnünk kell arra, hogy a kulcsban szereplõ oszlopok száma minimális legyen, ha bármelyik oszlopot elhagyjuk, akkor már nem különbözteti meg a táblázat két sorát.
Az elsõdleges kulcsok kijelölése az adatbázis-tervezés egyik legfontosabb feladata. A konkrét adatmodell legtöbbször nyilvánvalóvá teszi, hogy mi legyen az elsõdleges kulcs a relációban.