Ці ёсць розніца паміж двума першаснымі ключамі і складовым ключом?


адказ 1:

Так, ёсць розніца. Перш чым пазначыць розніцу, вам трэба зразумець, што "ключ" - гэта поле, значэнне якога адназначна вызначае радок. Гэта называецца "унікальнасць" уласцівасці ключа. Існуе другое ўласцівасць ключа (у якім ёсць розніца паміж складовым ключом і некалькімі ключамі), а менавіта ўласцівасць "мінімальнасць". Гэта азначае, што нельга выдаляць поле з ключа, каб унікальнасць была знішчана.

Разгледзім табліцу вынікаў экзаменаў студэнта наступным чынам:

  • ScoreId (унікальны парадкавы нумар) StudentId (ідэнтыфікацыя рэгістрацыі студэнта гарантавана унікальнай для кожнага студэнта незалежна ад навучальнага года; FK ў студэнцкай табліцы) SubjectNameSubjectTestIdentifier (унікальны ідэнтыфікацыйны нумар для кожнага тэсту, які калі-небудзь праводзіўся ўстановай; ФК у табліцы TestMaster з указаннем навучальнага года, прадмета, даты тэсту і іншых атрыбутаў тэсту) SubjectScore

У вышэйзгаданым выпадку - {ScoreId}, {StudentId, SubjectName, SubjectTestIdentifer, SubjectScore} і {StudentId, SubjectTestIdentifier} - гэта ключы - кожнае з гэтых набораў палёў адназначна вызначае радок, пра які вы кажаце.

Цяпер разгледзім {StudentId, SubjectName, SubjectTestIdentifier, SubjectScore} і {StudentId, SubjectTestIdentifier} - і тыя і іншыя выконваюць уласцівасць унікальнасці, першая з іх не праходзіць тэст на мінімальнасць - і адключыць "SubjectName" і "SubjectScore". І ўсё ж вызначце радок выразна.

Цяпер мы падыходзім да вашага пытання: У дадзеным выпадку {ScoreId} - гэта ключ, але не састаўны ключ, у той час як {StudentId, SubjectTestIdentifier} - гэта кампазіцыйны ключ. Усе складаныя клавішы з'яўляюцца унікальнымі ключамі, але не ўсе унікальныя клавішы з'яўляюцца складанымі ключамі.


адказ 2:

Калі вы аб'яўляеце некалькі атрыбутаў у якасці асноўных ключоў, яны ўтвараюць складаны ключ. Складаныя ключы, як правіла, ствараюцца тады, калі няма такога ключа, які можна выкарыстаць для адназначнай ідэнтыфікацыі кожнага радка. Такім чынам, вы ствараеце спалучэнне палёў, якія разам могуць адназначна ідэнтыфікаваць радкі.

Калі ў вас ёсць некалькі ключоў, з якіх можна зрабіць асноўны ключ, такія палі называюцца кандыдатам або другаснымі ключамі.

Некалькі вызначаных першасных ключоў і складовых ключоў у асноўным аднолькавыя.