Q:
Каква е разликата между съставен ключ, първичен ключ и чужд ключ?
A:Основният ключ се дефинира като колона от ключ или база данни, която уникално идентифицира всеки ред в таблица на базата данни. Композитният ключ е набор от повече от един ключ, който заедно еднозначно идентифицира всеки запис.
Външен ключ, от друга страна, е ключ в някаква таблица, който уникално идентифицира редове в друга таблица - или с други думи, ключ, който проследява първичен ключ в друга таблица.
Пример може да бъде списък на домовете на пазара на недвижими имоти. В добре подредена база данни трябва да има първичен ключ, който еднозначно идентифицира всеки запис. Как това може да има връзка със сложността на базата данни.
В някои случаи домовете могат да бъдат идентифицирани единствено чрез ипотечен номер - всички други данни (градове, улици, номера на къщите) не са уникални за всеки запис. Ипотечният номер ще бъде основният ключ. Да предположим обаче, че технологията за регистрация на брокери на MLS присвоява свои уникални номера на записите в таблицата. След това ще има два ключа, които разработчиците може да идентифицират като „кандидат-ключове“: номер на ипотека и номер на MLS. Единият от тях ще се квалифицира като „първичен ключ“ по това, което някои биха помислили за произволен начин.
Композитният ключ би бил комбинацията от два ключа: например комбинацията от домашен номер и улица може да се квалифицира като съставен ключ, като се има предвид, че пазарните списъци са локални. Ако е така, тогава когато някой търси, използвайки както домашния номер, така и улицата, той трябва да получи само един-единствен запис.
Междувременно, ако има ключ в свързана таблица, например таблица на купувача, който се позовава на първичния ключ, това ще бъде чужд ключ.