Aby se daly databáze snadno prohledávat a rozšiřovat, používají se různé databázové architektury, které nám toto umožní.
Příklad klíčů v databázi e‑shopu
V tabulce person jsou superklíče všechny, které obsahují person_ID nebo email, tedy {person_ID}, {email}, {person_ID, email}, {person_ID, name}, {person_ID, surname}, {person_ID, name, surname}, {email, name}, {email, surname}, {email, name, surname}, {person_ID, email, name}, {person_ID, email, surname}, {person_ID, email, name, surname}. Kandidátní klíče v tabulce person jsou pak klíče {person_ID} a {email}.
V tabulce buying je jediný superklíč i kandidátní klíč kombinace všech atributů, tedy {product_code, person_ID, date}. Tabulka vychází z předpokladu, že si každý zákazník může koupit daný produkt jen jednou za den. Kdybychom předpokládali, že může každý zákazník koupit produkt jen jednou za život, získali bychom i superklíč {product_code, person_ID}, který by byl i jediným kandidátním klíčem.
Jako primární klíč můžeme zvolit libovolný z kandidátních klíčů, tedy například {person_ID} pro tabulku person a {product_code, person_ID, date} pro tabulku buying. Kdybychom chtěli, mohli bychom místo toho za primární klíč zvolit pro tabulku person například {email}.
Primární klíč person_ID z tabulky person je použit i v tabulce buying, a proto je v tabulce buying cizím klíčem vedoucím do tabulky person.
Existují i další hojně používané typy databází. V posledních letech se rozšiřují možnosti ukládat nestrukturovaná data, například do NoSQL databází.