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

diferența cheie între cheia străină și cheia primară este asta cheia externă este o coloană sau un set de coloane care se referă la o cheie primară sau o cheie candidată a altui tabel, în timp ce cheia primară este o coloană sau un set de coloane care pot fi utilizate pentru a identifica un rând într-un tabel.

O coloană sau un set de coloane care pot fi folosite pentru a identifica sau accesa un rând sau un set de rânduri într-o bază de date se numește o cheie. O cheie primară dintr-o bază de date relațională este o combinație de coloane într-un tabel care identifică în mod un rând un rând din tabel. Tasta străină într-o bază de date relațională este un câmp într-un tabel care se potrivește cu cheia primară a altui tabel. Cheia externă este folosită pentru a traversa tabelele de referință.

CUPRINS

1. Prezentare generală și diferență cheie
2. Ce este cheia străină?
3. Ce este cheia primară
4. Comparație între ele - cheie străină și cheie primară în formă tabulară
5. rezumat

Ce este cheia străină??

Cheia externă este o constrângere referențială între două tabele. Identifică o coloană sau un set de coloane într-un tabel, numit tabelul de referință care se referă la un set de coloane dintr-un alt tabel, numit tabelul referit. Cheia străină sau coloanele din tabela de referință trebuie să fie cheia primară sau o cheie candidată (o cheie care poate fi utilizată ca cheie primară) în tabelul referitor. În plus, cheile externe permit legarea datelor între mai multe tabele. Prin urmare, cheia externă nu poate conține valori care nu apar în tabelul la care se referă. Apoi, referința furnizată de cheia externă ajută la conectarea informațiilor în mai multe tabele și acest lucru ar deveni esențial în bazele de date normalizate. Rânduri multiple din tabela de referință se pot referi la un singur rând din tabelul referit.

Figura 01: Cartografierea cheilor străine

În standardul ANSI SQL, constrângerea FOREIGN KEY definește cheile externe. În plus, este posibil să se definească cheile străine atunci când se creează masa în sine. O tabelă poate avea mai multe chei externe și pot face referire la diferite tabele.

Ce este cheia primară?

Cheia primară este o coloană sau o combinație de coloane care definesc în mod unic un rând într-un tabel al unei baze de date relaționale. O tabelă poate avea cel mult o cheie primară. Cheia primară impune constrângerea implicită NOT NULL. Prin urmare, o coloană cu cheie primară nu poate avea valori NULL în ea. Cheia primară poate fi un atribut normal în tabel care este garantat a fi unic, cum ar fi un număr de securitate socială sau ar putea fi o valoare unică generată de sistemul de gestionare a bazei de date, cum ar fi un identificator global unic (GUID) în Microsoft SQL Server.

Figura 02: Cheia primară

În plus, constrângerea PRIMARY KEY din ANSI SQL Standard definește cheile primare. De asemenea, este posibil să definiți o cheie primară la crearea tabelului. În plus, SQL permite ca cheia primară să fie alcătuită dintr-una sau mai multe coloane și fiecare coloană inclusă în cheia primară este definită implicit ca fiind NU NULL. Dar unele sisteme de gestionare a bazelor de date necesită ca coloanele primare să fie explicit NU.

Care este diferența dintre cheia externă și cheia primară?

 Cheia străină vs. cheia primară

Tasta străină este o coloană sau un grup de coloane într-o tabelă de baze de date relaționale care oferă o asociere între datele din două tabele. Cheia primară este o coloană specială de bază de date relațională sau o combinație de mai multe coloane care permite identificarea unică a tuturor înregistrărilor de tabele.
NUL
Tasta străină acceptă valoarea NULL. Valoarea cheie cheie nu poate fi NULL.
Număr de chei
Tabelul poate avea mai multe chei externe. Tabelul poate avea o singură cheie primară.
  dublare
Tupele pot avea o valoare duplicată pentru un atribut al unei taste străine. Două tuple dintr-o relație nu pot avea valori duplicate pentru un atribut cheie cheie.

Rezumat - cheie străină vs cheie primară

Diferența dintre cheia străină și cheia primară este aceea că cheia externă este o coloană sau un set de coloane care se referă la o cheie primară sau o cheie candidată a altui tabel, în timp ce cheia primară este o coloană sau un set de coloane care pot fi utilizate în mod unic identificați un rând dintr-un tabel.

Referinţă:

1. "Cheia străină" Wikipedia, Fundația Wikimedia, 12 mai 2018. Disponibil aici  
2. "Cheia primară" Wikipedia, Fundația Wikimedia, 3 aprilie 2018. Disponibil aici 

Datorită fotografiei:

1.'Foreign-Key-Mapping'By MovGP0 - Muncă proprie, (CC BY-SA 3.0) prin intermediul Commons Wikimedia  
2. 'Erd-id-as-prim-key'By UniCollab - Lucrare proprie, (CC BY-SA 3.0) prin intermediul Commons Wikimedia