Wierzę, że większość ludzi, którzy opracowali jakiekolwiek aplikacje bazodanowe o dużych rozmiarach, powie Ci, że klucze zastępcze są jedynym realistycznym rozwiązaniem.
Wiem, że społeczność akademicka się z tym nie zgodzi, ale to jest różnica między teoretyczną czystością a praktycznością .
Każde zapytanie o rozsądnej wielkości, które musi wykonać łączenie między tabelami, które używają kluczy innych niż zastępcze, w przypadku gdy niektóre tabele mają złożone klucze podstawowe, szybko stają się niemożliwe do utrzymania.