Primárny kľúč vs jedinečný kľúč: Aký je rozdiel?

Obsah:

Anonim

Čo je primárny kľúč?

Obmedzením primárneho kľúča je stĺpec alebo skupina stĺpcov v tabuľke, ktorá jedinečne identifikuje každý riadok v tejto tabuľke. Primárny kľúč nemôže byť duplikát, čo znamená, že rovnaká hodnota sa v tabuľke nemôže vyskytnúť viackrát.

Tabuľka by mala mať viac ako jeden primárny kľúč. Primárny kľúč je možné definovať na úrovni stĺpca alebo tabuľky. Ak vytvoríte zložený primárny kľúč, mal by sa definovať na úrovni tabuľky.

V tomto návode sa dozviete:

  • Čo je primárny kľúč?
  • Čo je jedinečný kľúč?
  • Prečo používať primárny kľúč?
  • Prečo používať jedinečný kľúč?
  • Vlastnosti primárneho kľúča
  • Vlastnosti jedinečného kľúča
  • Príklad vytvorenia primárneho kľúča
  • Príklad vytvorenia jedinečného kľúča
  • Rozdiel medzi primárnym kľúčom a jedinečným kľúčom
  • Čo je lepšie?

Čo je jedinečný kľúč?

Jedinečný kľúč je skupina jedného alebo viacerých polí alebo stĺpcov tabuľky, ktoré jedinečne identifikujú databázový záznam.

Jedinečný kľúč je rovnaký ako primárny kľúč, ale pre stĺpec tabuľky môže prijať jednu nulovú hodnotu. Rovnako nemôže obsahovať rovnaké hodnoty. Na jedinečné obmedzenia sa odkazuje cudzím kľúčom iných tabuliek.

KĽÚČOVÉ ROZDIELY

  • V tabuľke môže byť jeden primárny kľúč, zatiaľ čo v tabuľke môže byť viac jedinečných kľúčov.
  • Účelom primárneho kľúča je vynútenie integrity entity na druhej strane účelom jedinečného kľúča je vynútenie jedinečných údajov.
  • V primárnom kľúči je predvolený index zoskupený, zatiaľ čo v jedinečnom kľúči je predvolený index zoskupený
  • Primárny kľúč nepovoľuje nulové stĺpce, zatiaľ čo jedinečný umožňuje nulové stĺpce.
  • V primárnom kľúči nie sú povolené duplikáty kľúčov, pokiaľ sú v jedinečnom kľúči. Ak je jedna alebo viac častí kľúča neplatných, potom sú povolené duplikáty kľúčov.

Prečo používať primárny kľúč?

Tu sú dôležité dôvody, prečo používať primárny kľúč:

  • Hlavným cieľom primárneho kľúča je identifikácia každého záznamu v databázovej tabuľke.
  • Primárny kľúč môžete použiť, keď niekomu nedovolíte zadávať nulové hodnoty.
  • Ak odstránite alebo aktualizujete záznam, vykoná sa akcia, ktorú ste zadali, aby sa zabezpečila integrita údajov databázy.
  • Vykonajte operáciu obmedzenia a odmietnite operáciu odstránenia alebo aktualizácie nadradenej tabuľky.
  • Údaje sú usporiadané v poradí zoskupeného indexu, kedykoľvek fyzicky usporiadate tabuľku DBMS.

Prečo používať jedinečný kľúč?

Tu sú dôležité dôvody, prečo používať jedinečný kľúč:

  • Účelom jedinečného kľúča je zabezpečiť, aby informácie v stĺpci pre každý záznam tabuľky boli jedinečné.
  • Keď používateľovi umožníte zadať nulovú hodnotu.
  • Používa sa jedinečný kľúč, pretože predvolene vytvára index bez klastrov.
  • Jedinečný kľúč je možné použiť, ak musíte v stĺpci zachovať nulové hodnoty.
  • Keď jedno alebo viac ako jedno pole / stĺpce tabuľky, ktoré jedinečne identifikujú záznam v databázovej tabuľke.

Vlastnosti primárneho kľúča

Tu sú dôležité vlastnosti primárneho kľúča:

  • Primárny kľúč implementuje integritu entity tabuľky.
  • V tabuľke môžete mať iba jednu primárnu položku.
  • Primárny kľúč obsahuje jeden alebo viac stĺpcov tabuľky.
  • Stĺpce sú definované ako null.

Vlastnosti jedinečného kľúča

Tu sú dôležité vlastnosti jedinečného kľúča:

  • V tabuľke môžete definovať viac ako jeden jedinečný kľúč.
  • V predvolenom nastavení sú jedinečné kľúče v nekupovaných jedinečných indexoch.
  • Skladá sa z jedného alebo viacerých stĺpcov tabuľky.
  • Stĺpec tabuľky môže mať hodnotu null, ale výhodnejšia je iba jedna hodnota null pre každý stĺpec.
  • Na jedinečné obmedzenie sa dá ľahko odkazovať pomocou obmedzenia cudzieho kľúča.

Príklad vytvorenia primárneho kľúča

Nasledujúci príklad popisuje, že existuje tabuľka s názvom študent. Obsahuje päť atribútov, 1) StudID, 2) Číslo role, 3) Meno, 4) Priezvisko a 5) E-mail.

Atribút Roll No nemôže nikdy obsahovať duplicitnú alebo nulovú hodnotu. Je to tak preto, lebo každý študent zapísaný na univerzitu môže mať jedinečné číslo úlohy. Každý riadok tabuľky môžete ľahko identifikovať podľa čísla role študenta. Považuje sa to teda za primárny kľúč.

Príklad primárneho kľúča

Príklad vytvorenia jedinečného kľúča

Zvážte rovnakú tabuľku študentov s atribútmi, 1) StudID, 2) č. Role, 3) meno, 4) priezvisko a 5) e-mail.

Stud ID môže mať jedinečné obmedzenie, pri ktorom môžu byť položky v stĺpci Stud ID jedinečné, pretože každý študent univerzity musí mať jedinečné ID číslo. V prípade, že by študent menil univerzitu, nemal by v tom prípade žiadny preukaz stud. Záznam môže mať nulovú hodnotu, pretože v jedinečnom kľúčovom obmedzení je povolená iba jedna nulová hodnota.

Unikátny kľúčový príklad

Rozdiel medzi primárnym kľúčom a jedinečným kľúčom

Tu sú dôležité rozdiely medzi primárnym a jedinečným kľúčom:

Primárny kľúč Unikátny kľúč
V tabuľke môže byť jeden primárny kľúč V tabuľke môže byť niekoľko jedinečných kľúčov
Nepovoluje nulové stĺpce. Umožňuje nulové stĺpce.
Predvolený index je zoskupený Predvolený index nie je zoskupený
Účelom primárneho kľúča je vynútiť integritu entity. Účelom jedinečného kľúča je vynútenie jedinečných údajov.
Primárny kľúč je možné vytvoriť pomocou syntaxe:
CREATE TABLE Employee(ID int PRIMARY KEY,Name varchar(255),City varchar(150))
Jedinečný kľúč je možné vytvoriť pomocou syntaxe:
CREATE TABLE Employee(ID int UNIQUE.Name varchar(255) NOT NULL. City varchar(150))
Je to obmedzenie SQL, ktoré vám umožňuje jednoznačne identifikovať každý záznam alebo riadok v databázovej tabuľke. Je to obmedzenie SQL, ktoré neumožňuje priradiť rovnakú hodnotu dvom izolovaným záznamom v databázovej tabuľke.
V primárnom kľúči nie sú povolené duplicitné kľúče. Ak je v jedinečnom kľúči jedna alebo viac kľúčových častí nulových, potom sú povolené duplicitné kľúče.

Čo je lepšie?

  • Jedinečný kľúč je lepší, ak máte stĺpce, o ktorých viete, že by nemali obsahovať duplikáciu. Toto je dobrý spôsob, ako zabezpečiť overenie údajov.
  • Primárny kľúč je ideálny, ak nemôžete v tabuľke ponechať hodnotu null. Môže sa tiež použiť, keď máte cudzí kľúč v inej tabuľke na vytvorenie vzťahu.