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

principala diferență între cheia primară și cheia străină este că cheia primară este utilizată pentru a identifica în mod unic înregistrările din tabel, în timp ce cheia externă este utilizată pentru a conecta împreună două table.

Majoritatea organizațiilor de afaceri utilizează baze de date pentru a stoca date. Un sistem de gestionare a bazelor de date (DBMS) este un software care ajută la crearea și gestionarea datelor în baze de date. Un tip complex de DBMS se numește Sistem de management al bazelor de date relaționale (RDBMS). Se bazează pe modelul relațional. Ele stochează datele în tabele. Fiecare tabel este alcătuit din rânduri și coloane. Un rând reprezintă o intrare în timp ce o coloană reprezintă un atribut. Tabelele din RDBMS au o asociere între ele. Cheile îi ajută să identifice relațiile dintre tabele și să identifice în mod unic orice rând de date din interiorul unui tabel. O cheie poate fi un singur atribut sau o combinație de chei. Acestea sunt diferite tipuri de chei, iar cheia primară și cheia străină sunt două dintre ele.

Domenii cheie acoperite

1. Ce este cheia primară
     - Definiție, funcționalitate
2. Ce este cheia străină?
     - Definiție, funcționalitate
3. Care este diferența dintre cheia primară și cheia externă
     - Compararea diferențelor cheie

Termeni cheie

Baze de date, DBMS, Cheie străină, Cheie primară, RDBMS

Ce este o cheie primară

O coloană de taste primare din tabel ajută la identificarea fiecărui rând sau a unei înregistrări în tabel. Conține valori unice. Coloana cheie primară nu poate avea valori Null. O masă poate avea o singură cheie primară. Într-o masă pentru studenți, student_id este cheia primară. Într-o tabelă Patient_Details, patient_id este cheia primară. Nu este necesar ca cheia primară să aibă un singur câmp. Poate fi de asemenea o combinație de câmpuri multiple. Atunci când o cheie primară constă din mai multe câmpuri, se numește o cheie compusă. De exemplu, cheia primară a tabelului Student poate fi combinația dintre student_id și nume.

Ce este o cheie străină

O cheie străină este folosită pentru a se referi la un alt tabel. Se mai numește și o cheie de referință. Este o coloană sau o combinație de coloane care se potrivește cu o cheie primară dintr-un tabel diferit. Cu alte cuvinte, o cheie străină în tabel este o cheie primară a unei alte mese.

Figura 1: Cheie primară și străină

De exemplu, presupuneți că există o bază de date privind vânzările. Are tabele pentru clienți și produse. Tabelul clienților are coloane client_id, nume, adresă și contact_no. Cheia primară a tabelului clientului este client_id. Produsul are nume de produse, nume, coloane de calitate. Cheia primară a tabelului de produse este product_id. Plasarea elementului product_id în tabelul clientului va crea o legătură între cele două tabele. Produsul_id în tabelul de produse este cheia primară, dar este o cheie străină în tabelul client_table. De asemenea, este posibilă conectarea tabelelor în baza de date utilizând cheia externă.

Diferența dintre cheia primară și cheia străină

Definiție

În modelul relațional al bazelor de date, o cheie primară este o alegere specifică a unui set minim de atribute sau coloane care specifică în mod unic un tuplu sau un rând într-un tabel. O cheie străină este un câmp sau o colecție de câmpuri într-un singur tabel care identifică în mod unic un rând dintr-un alt tabel sau același tabel. Prin urmare, aceasta constituie diferența de bază dintre cheia primară și cheia externă.

Numărul de tabele asociate

Cheia primară este legată de o singură masă în timp ce o cheie străină este legată de două tabele. Astfel, rezultând din conceptul de bază, aceasta este o altă diferență între cheia primară și cheia străină.

Valori nula

Mai mult, o valoare a cheii primare nu poate fi nulă, dar o valoare cheie străină poate fi nulă.

Valori duplicate

De asemenea, o altă diferență între cheia primară și cheia externă este aceea că valorile cheie primare nu pot avea valori duplicate, în timp ce valorile cheie străine pot avea valori duplicate.

Număr de chei

Mai mult, o altă diferență importantă între cheia primară și cheia externă este că nu poate exista decât o singură cheie primară într-un tabel. Cu toate acestea, pot exista mai multe chei străine într-un tabel.

folosire

Cheia primară este utilizată pentru a identifica în mod unic înregistrările tabelului, în timp ce cheia externă este utilizată pentru a lega împreună două tabele. Aceasta este diferența principală dintre cheia primară și cheia externă.

Concluzie

Cheia primară și cheia externă sunt două tipuri de chei utilizate în RDBMS. Diferența dintre cheia primară și cheia externă este aceea că cheia primară este utilizată pentru a identifica în mod unic înregistrările din tabel, în timp ce cheia externă este utilizată pentru a conecta două mese împreună.

Referinţă:

1. "Cheia primară SQL." Www.tutorialspoint.com, Tutorials Point, disponibil aici.
2. "SQL Foreign Key". Www.tutorialspoint.com, Tutorials Point, disponibil aici.

Datorită fotografiei:

1. "Star-schema-example" Prin SqlPac (talk) - (CC BY-SA 3.0) prin Wikimedia Commons