Sunteți pe pagina 1din 9

Chei SGBD: candidat, super, primar, străin (exemplu)

Cuprins
 Ce sunt cheile din SGBD?
 De ce avem nevoie de o cheie?
 Tipuri de chei în sistemul de gestionare a bazelor de date
 Care este Super cheia?
 Ce este o cheie primară?
 Ce este tasta alternativă?
 Ce este o cheie de candidat?
 Ce este cheia străină?
 Ce este cheia compusă?
 Ce este cheia compusă?
 Ce este o cheie surogat?
 Diferența dintre cheia primară și cheia externă
 rezumat
Ce sunt cheile din SGBD?

CHEILE din SGBD este un atribut sau un set de atribute care vă ajută să identificați un
rând (tuplu) într-o relație (tabel). Acestea vă permit să găsiți relația dintre două tabele.
Tastele vă ajută să identificați în mod unic un rând dintr-un tabel printr-o combinație de
una sau mai multe coloane din acel tabel. Cheia este, de asemenea, utilă pentru
găsirea unei înregistrări sau a unui rând unic din tabel. Cheia bazei de date este, de
asemenea, utilă pentru găsirea unei înregistrări sau a unui rând unic din tabel.
Exemplu:

card de identitate al angajatului Nume Numele de familie


11 Andrew Johnson
22 Tom Lemn
33 Alex Hale
În exemplul dat mai sus, ID-ul angajatului este o cheie primară, deoarece identifică în
mod unic o înregistrare a angajatului. În acest tabel, niciun alt angajat nu poate avea
același ID de angajat.

În acest tutorial, veți învăța:

 Ce sunt cheile?
 De ce avem nevoie de o cheie?
 Diverse chei în sistemul de gestionare a bazelor de date
 Ce este Super cheia?
 Ce este cheia primară?
 Ce este cheia alternativă?
 Ce este cheia candidatului?
 Ce este cheia străină?
 Ce este cheia compusă?
 Ce este cheia compusă?
 Ce este cheia surogat?
 Diferența dintre cheia primară și cheia externă
De ce avem nevoie de o cheie?

Iată câteva motive pentru utilizarea cheii sql în sistemul SGBD.

 Tastele vă ajută să identificați orice rând de date dintr-un tabel. Într-o aplicație
din lumea reală, un tabel ar putea conține mii de înregistrări. Mai mult, înregistrările
ar putea fi duplicate. Tastele vă asigură că puteți identifica în mod unic o
înregistrare de tabel în ciuda acestor provocări.
 Vă permite să stabiliți o relație între și să identificați relația dintre tabele
 Vă ajută să vă asigurați identitatea și integritatea în relație.
Tipuri de chei în sistemul de gestionare a bazelor de date

Există în principal șapte tipuri diferite de chei în SGBD și fiecare cheie are
funcționalitatea diferită:
 Super cheie - O super cheie este un grup de chei simple sau multiple care
identifică rândurile dintr-un tabel.
 Cheia primară - este o coloană sau un grup de coloane dintr-un tabel care
identifică în mod unic fiecare rând din acel tabel.
 Cheie candidat - este un set de atribute care identifică în mod unic tuplurile dintr-
un tabel. Cheia candidat este o super cheie fără atribute repetate.
 Cheie alternativă - este o coloană sau un grup de coloane dintr-un tabel care
identifică în mod unic fiecare rând din acel tabel.
 Cheie străină - este o coloană care creează o relație între două tabele. Scopul
cheilor străine este de a menține integritatea datelor și de a permite navigarea între
două instanțe diferite ale unei entități.
 Cheie compusă - are două sau mai multe atribute care vă permit să recunoașteți
în mod unic o anumită înregistrare. Este posibil ca fiecare coloană să nu fie unică în
sine în baza de date.
 Cheie compusă - O cheie artificială care are scopul de a identifica în mod unic
fiecare înregistrare se numește cheie surogat. Acest tip de cheie este unic,
deoarece este creat atunci când nu aveți nicio cheie primară naturală.
 Cheie surogat - O cheie artificială care are scopul de a identifica în mod unic
fiecare înregistrare se numește cheie surogat. Acest tip de cheie este unic,
deoarece este creat atunci când nu aveți nicio cheie primară naturală.
Care este Super cheia?

O supercheie este un grup de taste simple sau multiple care identifică rândurile dintr-un
tabel. O super cheie poate avea atribute suplimentare care nu sunt necesare pentru
identificarea unică.

Exemplu:

EmpSSN EmpNum Empname


9812345098 AB05 Afișate
9876512345 AB06 Roslyn
199937890 AB07 James
În exemplul dat mai sus, numele EmpSSN și EmpNum sunt superkeys.

Ce este o cheie primară?


CHEIA PRIMARĂ este o coloană sau un grup de coloane dintr-un tabel care identifică
în mod unic fiecare rând din acel tabel. Cheia primară nu poate fi un duplicat, ceea ce
înseamnă că aceeași valoare nu poate apărea de mai multe ori în tabel. Un tabel nu
poate avea mai multe chei principale.
Reguli pentru definirea cheii primare:

 Două rânduri nu pot avea aceeași valoare a cheii primare


 Pentru fiecare rând trebuie să aibă o valoare cheie primară.
 Câmpul cheie primară nu poate fi nul.
 Valoarea dintr-o coloană de cheie primară nu poate fi niciodată modificată sau
actualizată dacă o cheie străină se referă la acea cheie primară.
Exemplu:

În exemplul următor, StudID este o cheie principală.

StudI Rola Numele de


Nume E-mail
D numărul familie
Această adresă de e-mail este protejată de spamboți.
1 11 Tom Preț
Aveți nevoie de JavaScript activat pentru ao vizualiza.
Această adresă de e-mail este protejată de spamboți.
2 12 Nick Wright
Aveți nevoie de JavaScript activat pentru ao vizualiza.
Această adresă de e-mail este protejată de spamboți.
3 13 Dana Natan
Aveți nevoie de JavaScript activat pentru ao vizualiza.
Ce este tasta alternativă?

TASTE ALTERNATE este o coloană sau un grup de coloane dintr-un tabel care


identifică în mod unic fiecare rând din acel tabel. Un tabel poate avea mai multe opțiuni
pentru o cheie primară, dar numai una poate fi setată ca cheie primară. Toate tastele
care nu sunt cheie primare se numesc cheie alternativă.
Exemplu:
În acest tabel, StudID, Roll No, Email sunt calificate pentru a deveni o cheie principală.
Dar, deoarece StudID este cheia principală, Roll No, Email devine cheia alternativă.

StudI Rola Nume Numele de E-mail


D numărul familie
Această adresă de e-mail este protejată de spamboți.
1 11 Tom Preț
Aveți nevoie de JavaScript activat pentru ao vizualiza.
Această adresă de e-mail este protejată de spamboți.
2 12 Nick Wright
Aveți nevoie de JavaScript activat pentru ao vizualiza.
Această adresă de e-mail este protejată de spamboți.
3 13 Dana Natan
Aveți nevoie de JavaScript activat pentru ao vizualiza.
Ce este o cheie de candidat?

CANDIDATE KEY este un set de atribute care identifică în mod unic tuplurile dintr-un
tabel. Cheia candidat este o super cheie fără atribute repetate. Cheia primară trebuie
selectată din cheile candidate. Fiecare tabel trebuie să aibă cel puțin o cheie de
candidat. Un tabel poate avea mai multe chei candidate, dar numai o singură cheie
primară.
Proprietățile cheii candidatului:
 Trebuie să conțină valori unice
 Cheia candidatului poate avea mai multe atribute
 Nu trebuie să conțină valori nule
 Ar trebui să conțină câmpuri minime pentru a asigura unicitatea
 Identificați în mod unic fiecare înregistrare dintr-un tabel
Exemplu: în tabelul dat ID-ul Stud, Roll No și e-mail sunt chei de candidat care ne ajută
să identificăm în mod unic înregistrarea studentului în tabel.

StudI Rola Numele de


Nume E-mail
D numărul familie
Această adresă de e-mail este protejată de spamboți.
1 11 Tom Preț
Aveți nevoie de JavaScript activat pentru ao vizualiza.
Această adresă de e-mail este protejată de spamboți.
2 12 Nick Wright
Aveți nevoie de JavaScript activat pentru ao vizualiza.
Această adresă de e-mail este protejată de spamboți.
3 13 Dana Natan
Aveți nevoie de JavaScript activat pentru ao vizualiza.

Ce este cheia străină?


CHEIA STRĂINĂ este o coloană care creează o relație între două tabele. Scopul
cheilor străine este de a menține integritatea datelor și de a permite navigarea între
două instanțe diferite ale unei entități. Acționează ca o referință încrucișată între două
tabele, deoarece face referință la cheia principală a unui alt tabel.
Exemplu:

DeptCode DeptName
001 Ştiinţă
002 Engleză
005 Calculator
ID-ul profesorului Fname Lname
B002 David Warner
B017 Sara Joseph
B009 Mike Brunton
În această cheie din exemplul dbms, avem două mese, predare și departament într-o
școală. Cu toate acestea, nu există nicio modalitate de a vedea ce lucru de căutare în
ce departament.

În acest tabel, adăugând cheia externă în Deptcode la numele profesorului, putem crea
o relație între cele două tabele.

ID-ul profesorului DeptCode Fname Lname


B002 002 David Warner
B017 002 Sara Joseph
B009 001 Mike Brunton
Acest concept este, de asemenea, cunoscut sub numele de Integritate referențială.

Ce este cheia compusă?

COMPONENT KEY are două sau mai multe atribute care vă permit să recunoașteți în
mod unic o anumită înregistrare. Este posibil ca fiecare coloană să nu fie unică în sine
în baza de date. Cu toate acestea, atunci când este combinată cu cealaltă coloană sau
coloane, combinația de taste compozite devine unică. Scopul cheii compuse din baza
de date este de a identifica în mod unic fiecare înregistrare din tabel.
Exemplu:

Comandă nu PorductID numele produsului Cantitate


B005 JAP102459 Mouse 5
B005 DKT321573 USB 10
B005 OMG446789 Monitor LCD 20
B004 DKT321573 USB 15
B002 OMG446789 Imprimanta laser 3
În acest exemplu, OrderNo și ProductID nu pot fi o cheie principală, deoarece nu
identifică în mod unic o înregistrare. Cu toate acestea, ar putea fi utilizată o cheie
compusă din ID-ul comenzii și ID-ul produsului, deoarece identifică în mod unic fiecare
înregistrare.

Ce este cheia compusă?

COMPOSITE KEY este o combinație de două sau mai multe coloane care identifică în
mod unic rândurile dintr-un tabel. Combinația de coloane garantează unicitatea, deși
unicitatea individuală nu este garantată. Prin urmare, acestea sunt combinate pentru a
identifica în mod unic înregistrările dintr-un tabel.
Diferența dintre cheia compusă și cea compusă este că orice parte a cheii compuse
poate fi o cheie străină, dar cheia compusă poate sau nu o parte a cheii străine.

Ce este o cheie surogat?

SURROGATE KEYS este o cheie artificială care are ca scop identificarea în mod unic a
fiecărei înregistrări, numită cheie surogat. Acest tip de cheie parțială în dbms este unic,
deoarece este creat atunci când nu aveți nicio cheie primară naturală. Ele nu acordă
niciun sens datelor din tabel. Cheia surogat este de obicei un număr întreg. O cheie
surogat este o valoare generată chiar înainte ca înregistrarea să fie introdusă într-un
tabel.

Fname Numele de familie Timpul de începere Sfârșitul timpului


Anne Smith 09:00 Ora 18:00
Jack Francis 08:00 Ora 17:00
Anna McLean 11:00 20:00
Afișate Willam Ora 14:00 Ora 23:00
Deasupra, exemplul dat, a arătat temporele de schimbare ale diferitelor angajați. În
acest exemplu, este necesară o cheie surogat pentru a identifica în mod unic fiecare
angajat.

Cheile surogat în sql sunt permise când

 Nicio proprietate nu are parametrul cheii primare.


 În tabel când cheia primară este prea mare sau complicată.
Diferența dintre cheia primară și cheia externă

Cheia principala Cheie externă


Vă ajută să identificați în mod unic o Este un câmp din tabel care este cheia primară a
înregistrare în tabel. altui tabel.
Cheia primară nu acceptă niciodată valori
O cheie străină poate accepta mai multe valori nule.
nule.
Cheia primară este un index grupat, iar datele O cheie străină nu poate crea automat un index,
din tabelul SGBD sunt organizate fizic în grupat sau non-grupat. Cu toate acestea, puteți crea
secvența indexului grupat. manual un index pe cheia externă.
Puteți avea singura cheie primară într-un tabel. Puteți avea mai multe chei străine într-un tabel.
rezumat

 O cheie în SQL este un atribut sau un set de atribute care vă ajută să identificați
un rând (tuplu) într-o relație (tabel)
 Cheile SGBD vă permit să stabiliți o relație între și să identificați relația dintre
tabele
 Șapte tipuri de chei SGBD sunt super, primar, candidat, alternativ, străin,
compus, compozit și cheie surogat.
 O super cheie este un grup de chei simple sau multiple care identifică rândurile
dintr-un tabel.
 O coloană sau un grup de coloane dintr-un tabel care ne ajută să identificăm în
mod unic fiecare rând din tabelul respectiv se numește cheie primară
 Toate tastele care nu sunt cheie primară se numesc cheie alternativă
 O super cheie fără atribut repetat se numește cheie candidat
 O cheie compusă este o cheie care are multe câmpuri care vă permit să
recunoașteți în mod unic o anumită înregistrare
 O cheie care are mai multe atribute pentru a identifica în mod unic rândurile dintr-
un tabel se numește cheie compusă
 O cheie artificială care are scopul de a identifica în mod unic fiecare înregistrare
se numește cheie surogat
 Cheia primară nu acceptă niciodată valori nule, în timp ce o cheie străină poate
accepta mai multe valori nule.

S-ar putea să vă placă și