Diferența dintre cheia primară și cheia unică

Diferența dintre cheia primară și cheia unică
Diferența dintre cheia primară și cheia unică

Video: Diferența dintre cheia primară și cheia unică

Video: Diferența dintre cheia primară și cheia unică
Video: Майкл Джексон и Принц ненавидели друг друга ... Но вот почему! | the detail. 2024, Iulie
Anonim

Cheie principală vs cheie unică

O coloană sau un set de coloane, care poate fi folosit pentru a identifica sau accesa un rând sau un set de rânduri dintr-o bază de date se numește cheie. O cheie unică este o cheie care poate identifica în mod unic un rând dintr-un tabel în contextul bazelor de date relaționale. O cheie unică este formată dintr-o singură coloană sau un set de coloane. O cheie primară este, de asemenea, o combinație de coloane dintr-un tabel care identifică unic un rând. Dar este considerat a fi un caz special al cheii unice.

Ce este cheia unică?

După cum sa menționat mai devreme, cheia unică este o singură coloană sau un set de coloane care pot identifica în mod unic un rând dintr-un tabel. Deci, o cheie unică este constrânsă astfel încât două valori ale acesteia să nu fie egale. O proprietate importantă este că cheile unice nu impun constrângerea NOT NULL. Deoarece NULL reprezintă lipsa unei valori, dacă două rânduri au NULL într-o coloană, atunci nu înseamnă că valorile sunt egale. Coloana definită ca o cheie unică permite doar o singură valoare NULL în acea coloană. Apoi, acesta poate fi folosit pentru a identifica unic rândul respectiv. De exemplu, într-un tabel care conține informații despre student, ID-ul studentului poate fi definit ca o cheie unică. Deoarece doi studenți nu pot avea același ID, acesta identifică în mod unic un singur student. Deci coloana ID student satisface toate proprietățile unei chei unice. În funcție de designul unei baze de date, un tabel poate avea mai multe chei unice.

Ce este cheia primară?

Cheia primară este, de asemenea, o coloană sau o combinație de coloane care definește în mod unic un rând într-un tabel al unei baze de date relaționale. Un tabel poate avea cel mult o cheie primară. Cheia primară impune constrângerea implicită NOT NULL. Deci, o coloană care este definită ca cheie primară nu poate avea valori NULL în ea. Cheia primară poate fi un atribut normal din tabel care este garantat a fi unic, cum ar fi numărul de securitate socială, sau poate fi o valoare unică generată de sistemul de gestionare a bazei de date, cum ar fi un identificator unic global (GUID) în Microsoft SQL Server. Cheile primare sunt definite prin constrângerea PRIMARY KEY din standardul ANSI SQL. Cheia primară poate fi definită și la crearea tabelului. SQL permite ca cheia primară să fie alcătuită din una sau mai multe coloane și fiecare coloană care este inclusă în cheia primară este implicit definită ca fiind NOT NULL. Dar unele sisteme de gestionare a bazelor de date necesită ca coloanele cheii primare să fie în mod explicit NOT NULL.

Diferența dintre cheia principală și cheia unică

Chiar dacă atât cheia primară, cât și cheia unică sunt una sau mai multe coloane care pot identifica în mod unic un rând dintr-un tabel, acestea au unele diferențe importante. Cel mai important, un tabel poate avea doar o singură cheie primară, în timp ce poate avea mai multe chei unice. Cheia primară poate fi considerată un caz special al cheii unice. O altă diferență este că cheile primare au o constrângere implicită NOT NULL, în timp ce cheia unică nu are această constrângere. Prin urmare, coloanele cu cheie unică pot să conțină sau nu valori NULL, dar coloanele cu cheie primară nu pot conține valori NULL.

Recomandat: