Външните ключове правят няколко неща. Най-очевидно, те ви предоставят вградена цялост на данните, както спомена Мейси Аби.
Интересното е, че оптимизаторът на заявки на любимата ви RDBMS може също да използва ограничения като външни ключове, за да направи допълнителни оптимизации. По принцип базата данни може да определи дали може да свърши по-добра работа при написването на заявка от вас. Наличието на външни ключове позволява на базата данни да прави тези предположения. Можете да намерите страхотен пример в Помагат ли ограниченията на външния ключ за производителността? . Въпреки че тази връзка е специфична за SQL Server, принципът е един и същ, независимо от двигателя на базата данни.