Първичен ключ срещу кандидат-ключ
Въпреки че първичният ключ е избран от ключовете кандидат, съществува известна разлика между първичния ключ и другите ключове кандидат, което ще бъде обсъдено подробно в тази статия. Проектирането на база данни е една от най-важните дейности, които трябва да се извършват при поддържане и съхраняване на данни. По време на този процес на проектиране трябва да се създадат различни таблици с много връзки. За достъп до тези таблици в база данни се използват различни видове ключове в съвременните езици за проектиране на бази данни като MYSQL, MSAccess, SQLite и др. От тези ключове кандидат-ключовете и първичните ключове са станали съществени в практиките за проектиране на бази данни.
Какво е кандидат-ключ?
Кандидатският ключ е единична колона или набор от колони в таблица на база данни, която може да се използва за еднозначно идентифициране на всеки запис в базата данни, без да се позовава на други данни. Всяка таблица на база данни може да има един или повече от един кандидат ключ. Набор от ключове за кандидат може да бъде създаден чрез използване на функционални зависимости. Има някои важни характеристики в кандидатския ключ. Те са;
• ключовете кандидат трябва да са уникални в рамките на домейна и не трябва да съдържат NULL стойности.
• ключът кандидат не трябва никога да се променя и той трябва да съдържа същата стойност за конкретна поява на обект.
Основната цел на кандидат-ключа е да помогне да се идентифицира един единствен ред от милиони редове в голяма таблица. Всеки кандидат ключ е квалифициран да стане първичен ключ. От всички ключове за кандидат обаче най-важният и специален ключ за кандидат ще стане основният ключ на таблица и той е най-добрият сред ключовете за кандидатстване.
Какво е първичен ключ?
Първичният ключ е най-добрият кандидат-ключ на таблица, който се използва за уникално идентифициране на записи, които се съхраняват в таблица. Когато създаваме нова таблица в база данни, ние сме помолени да изберем първичен ключ. Следователно изборът на първичен ключ за таблица е най-критичното решение, което трябва да бъде взето от дизайнера на база данни. Най-важното ограничение, което трябва да се има предвид при вземането на решение за първичен ключ, е, че избраната колона на таблицата трябва да съдържа само уникални стойности и не трябва да съдържа NULL стойности. Някои от първичните ключове, които често се използват при проектирането на таблици, са номер на социално осигуряване (SSN), ID и номер на национална лична карта (NIC).
Програмистът трябва да запомни да избира внимателно първичен ключ, тъй като е трудно да се промени. Следователно, според програмистите, най-добрата практика за създаване на първичен ключ е да се използва вътрешно генериран първичен ключ като Record ID, създаден от тип данни AutoNumber на MS Access. Ако се опитаме да вмъкнем запис в таблица с първичен ключ, който дублира съществуващ запис, вмъкването ще се провали. Стойността на първичния ключ не трябва да се променя, така че е по-важно да запазите статичен първичен ключ.
Първичен ключ е най-добрият кандидат ключ.
Каква е разликата между първичен ключ и кандидат-ключ?
• Ключът кандидат е колоната, която се квалифицира като уникална, докато първичният ключ е колоната, която уникално идентифицира запис.
• Таблица без ключове за кандидат не представлява никаква връзка.
• В базата данни може да има много ключови ключове за таблица, но трябва да има само един първичен ключ за таблица.
• Въпреки че първичният ключ е един от ключовете кандидат, понякога той е единственият кандидат ключ.
• След като е избран първичен ключ, другите ключове-кандидати стават уникални ключове.
• На практика кандидатният ключ може да съдържа NULL стойности, въпреки че в момента не съдържа никаква стойност. Следователно кандидатният ключ не е квалифициран за първичен ключ, тъй като първичният ключ не трябва да съдържа никакви NULL стойности.
• Възможно е също така ключовете кандидат, които са уникални в момента, да съдържат дублиращи се стойности, които дисквалифицират кандидатския ключ да стане първичен ключ.
Резюме:
Първичен ключ срещу кандидат-ключ
Ключът за кандидат и първичният ключ са основни ключове, които се използват при проектирането на бази данни, за да се идентифицират еднозначно данните в запис и да се направят връзки между таблици на база данни. Таблица трябва да съдържа само един първичен ключ и може да съдържа повече от един кандидат ключ. Днес повечето бази данни могат автоматично да генерират свой собствен първичен ключ. Следователно първичният ключ и ключовете кандидат предлагат многобройна поддръжка на системите за управление на база данни.
Снимките са предоставени: