Primaire sleutel versus kandidaat-sleutel
Hoewel de primaire sleutel wordt geselecteerd uit de kandidaatsleutels, bestaat er enig verschil tussen de primaire sleutel en de andere kandidaatsleutels, wat in dit artikel in detail zal worden besproken. Het ontwerpen van databases is een van de belangrijkste activiteiten die moeten worden uitgevoerd bij het onderhouden en opslaan van gegevens. Tijdens dit ontwerpproces moeten verschillende tabellen met veel relaties worden gemaakt. Om toegang te krijgen tot deze tabellen in een database, worden verschillende soorten sleutels gebruikt in moderne database-ontwerptalen zoals MYSQL, MSAccess, SQLite, enz. Van deze sleutels zijn kandidaat-sleutels en primaire sleutels essentieel geworden in het ontwerpen van databases.
Wat is een kandidaatsleutel?
Kandidaatsleutel is een enkele kolom of een reeks kolommen in een tabel van een database die kan worden gebruikt om een databaserecord uniek te identificeren zonder naar andere gegevens te verwijzen. Elke tabel van een database kan een of meer kandidaatsleutels hebben. Met behulp van functionele afhankelijkheden kan een set kandidaatsleutels worden aangemaakt. Er zijn enkele belangrijke functies in een kandidaatsleutel. Zij zijn;
• kandidaatsleutels moeten uniek zijn binnen het domein en mogen geen NULL-waarden bevatten.
• de kandidaat-sleutel mag nooit veranderen en moet dezelfde waarde hebben voor een specifiek voorkomen van een entiteit.
Het belangrijkste doel van een kandidaatsleutel is om een enkele rij uit miljoenen rijen in een grote tabel te helpen identificeren. Elke kandidaatsleutel is gekwalificeerd om een primaire sleutel te worden. Van alle kandidaat-sleutels wordt echter de belangrijkste en meest speciale kandidaat-sleutel de primaire sleutel van een tabel en het is de beste van de kandidaat-sleutels.
Wat is een primaire sleutel?
Een primaire sleutel is de beste kandidaatsleutel van een tabel die wordt gebruikt om op unieke wijze records te identificeren die in een tabel zijn opgeslagen. Bij het aanmaken van een nieuwe tabel in een database wordt ons gevraagd een primaire sleutel te selecteren. Daarom is de selectie van een primaire sleutel voor een tabel de meest kritische beslissing die door een databaseontwerper moet worden genomen. De belangrijkste beperking waarmee rekening moet worden gehouden bij het bepalen van een primaire sleutel, is dat de geselecteerde kolom van de tabel alleen unieke waarden mag bevatten en geen NULL-waarden. Enkele van de belangrijkste sleutels die vaak worden gebruikt bij het ontwerpen van tabellen zijn Social Security Number (SSN), ID en National Identity Card Number (NIC).
De programmeur moet onthouden om zorgvuldig een primaire sleutel te kiezen, omdat deze moeilijk te wijzigen is. Volgens de programmeurs is het daarom het beste om een primaire sleutel aan te maken door een intern gegenereerde primaire sleutel te gebruiken, zoals een record-ID gemaakt door het gegevenstype AutoNumber van MS Access. Als we proberen een record in een tabel in te voegen met een primaire sleutel die een bestaand record dupliceert, zal het invoegen mislukken. De primaire sleutelwaarde mag niet blijven veranderen, dus het is belangrijker om een statische primaire sleutel te behouden.
Een primaire sleutel is de beste kandidaat-sleutel.
Wat is het verschil tussen Primary Key en Candidate Key?
• Een kandidaatsleutel is de kolom die als uniek kwalificeert, terwijl de primaire sleutel de kolom is die een record uniek identificeert.
• Een tabel zonder kandidaatsleutels vertegenwoordigt geen enkele relatie.
• Er kunnen veel kandidaatsleutels voor een tabel in een database zijn, maar er mag slechts één primaire sleutel voor een tabel zijn.
• Hoewel de primaire sleutel een van de kandidaat-sleutels is, is dit soms de enige kandidaat-sleutel.
• Nadat een primaire sleutel is geselecteerd, worden de andere kandidaatsleutels unieke sleutels.
• Praktisch een kandidaatsleutel kan NULL-waarden bevatten, hoewel deze momenteel geen enkele waarde bevat. Daarom is de kandidaatsleutel niet gekwalificeerd voor een primaire sleutel omdat de primaire sleutel geen NULL-waarden mag bevatten.
• Het is ook mogelijk dat kandidaat-sleutels, die momenteel uniek zijn, dubbele waarden bevatten die een kandidaat-sleutel diskwalificeren om een primaire sleutel te worden.
Samenvatting:
Primaire sleutel versus kandidaat-sleutel
Kandidaatsleutel en primaire sleutel zijn essentiële sleutels die worden gebruikt bij het ontwerpen van databases om gegevens in een record uniek te identificeren en relaties tussen tabellen van een database te leggen. Een tabel mag slechts één primaire sleutel bevatten en kan meer dan één kandidaatsleutels bevatten. Tegenwoordig zijn de meeste databases in staat om automatisch hun eigen primaire sleutel te genereren. Daarom bieden de primaire sleutel en kandidaat-sleutels talrijke ondersteuning aan de databasebeheersystemen.
Afbeeldingen beleefdheid: