Verschil tussen primaire sleutel en kandidaat sleutel | Primaire sleutel vs kandidaat sleutel

Anonim

Primaire sleutel versus Candidate Key

Hoewel de primaire sleutel geselecteerd is uit de kandidaat sleutels, bestaat er een verschil tussen de primaire sleutel en de andere kandidaat sleutels, die in dit artikel gedetailleerd besproken zullen worden. Database ontwerpen is een van de belangrijkste activiteiten die moeten gebeuren bij het behoud en opslaan van gegevens. Tijdens dit ontwerpproces moeten verschillende tabellen met veel relaties worden gecreëerd. Om toegang te krijgen tot deze tabellen in een database, worden verschillende soorten toetsen gebruikt in een moderne database die talen ontwikkelt zoals MYSQL, MSAccess, SQLite, enz. Uit deze sleutels zijn kandidaat sleutels en primaire sleutels essentieel geworden bij het ontwerpen van databases.

Wat is een kandidaat-sleutel?

Kandidaat-sleutel is een enkele kolom of set kolommen in een tabel van een database die kan worden gebruikt om

een database-database uniek te identificeren zonder te verwijzen naar andere gegevens . Elke tabel van een database kan één of meerdere kandidaatleutels hebben. Een reeks kandidatenleutels kan worden gecreëerd door gebruik te maken van functionele afhankelijkheden. Er zijn enkele belangrijke eigenschappen in een kandidaat-toets. Zij zijn;

• kandidaat sleutels moeten uniek zijn in het domein en ze zouden geen NULL waarden moeten bevatten.

• de kandidaat-sleutel mag nooit veranderen en het moet dezelfde waarde bevatten voor een specifiek voorkomen van een entiteit.

Het hoofddoel van een kandidaat sleutel is om te helpen een enkele rij uit miljoenen rijen in een grote tafel te identificeren. Elke kandidaat sleutel is gekwalificeerd om een ​​primaire sleutel te worden. Uit alle kandidaat-sleutels wordt de belangrijkste en speciale kandidaat-sleutel echter de belangrijkste sleutel van een tafel en het is het beste onder de kandidaat-sleutels.

Wat is een primaire sleutel?

Een primaire sleutel is

de beste kandidaat sleutel van een tabel die wordt gebruikt om records te identificeren die zijn opgeslagen in een tabel . Bij het aanmaken van een nieuwe tabel in een database worden we gevraagd een primaire sleutel te selecteren. Daarom is de selectie van een primaire sleutel voor een tabel de meest kritische beslissing die door een database ontwerper moet worden genomen. De belangrijkste beperking, die bij het bepalen van een primaire sleutel moet in aanmerking worden genomen, is dat de geselecteerde kolom van de tabel alleen unieke waarden moet bevatten en geen NULL-waarden moeten bevatten. Enkele van de primaire sleutels die vaak gebruikt worden bij het ontwerpen van tabellen zijn Social Security Number (SSN), ID en Nationaal Identiteitskaartnummer (NIC). De programmeur moet zich onthouden om een ​​primaire sleutel voorzichtig te kiezen omdat het moeilijk is om te veranderen. Daarom is volgens de programmeurs de beste praktijk om een ​​primaire sleutel te creëren, gebruik te maken van een intern gegenereerde primaire sleutel, zoals Record ID gemaakt door AutoNumber datatype MS Access. Als we proberen een record in een tabel in te voeren met een primaire sleutel die een bestaand record dupliceert, zal de invoeging mislukken. De primaire sleutelwaarde moet niet veranderen, dus het is belangrijk om een ​​statische primaire sleutel te houden.

Een primaire sleutel is de beste kandidaat sleutel.

Wat is het verschil tussen primaire sleutel en kandidaat sleutel?

• Een kandidaat sleutel is de kolom die uniek is, terwijl de primaire sleutel de kolom is die een record uniek identificeert.

• Een tabel zonder kandidaat toetsen vertegenwoordigt geen relatie.

• Er kunnen veel kandidaat sleutels voor een tabel in een database zijn, maar er moet maar één primaire sleutel voor een tabel zijn.

• Hoewel de primaire sleutel een van de kandidaat sleutels is, is het soms de enige kandidaat sleutel.

• Nadat een primaire sleutel is geselecteerd, worden de andere kandidatenleutels unieke toetsen geworden.

• In principe kan een kandidaat-toets NULL-waarden bevatten, hoewel het momenteel geen waarde bevat. Daarom is de kandidaat-sleutel niet geschikt voor een primaire sleutel omdat de primaire sleutel geen NULL-waarden bevat.

• Het kan ook zijn dat kandidaat-sleutels die op dit moment uniek zijn, dubbele waarden bevatten die een kandidaat-sleutel onbevoegd maken om een ​​primaire sleutel te worden.

Samenvatting:

Primaire sleutel versus Candidate Key

Kandidatenleutel en primaire sleutel zijn essentiële sleutels die worden gebruikt bij het ontwerpen van databases om gegevens uniek te identificeren in een record en relaties te maken tussen tabellen van een database. Een tabel mag slechts één primaire sleutel bevatten en kan meer dan één kandidaat toetsen bevatten. Vandaag kunnen de meeste databases automatisch hun eigen primaire sleutel genereren. Daarom bieden de primaire sleutel- en kandidaat-sleutels talrijke ondersteuning aan de database management systemen.

Afbeeldingen Hoffelijkheid:

Primaire sleutel door SqlPac (CC BY-SA 3. 0)