- Cheile joacă un rol important în baza de date relațională.
- Este folosit pentru a identifica în mod unic orice înregistrare sau rând de date din tabel. De asemenea, este folosit pentru a stabili și identifica relații între tabele.
De exemplu, ID-ul este folosit ca cheie în tabelul Student deoarece este unic pentru fiecare student. În tabelul PERSON, numărul_pașaport, numărul_licență, SSN sunt chei, deoarece sunt unice pentru fiecare persoană.
Tipuri de chei:
1. Cheie primară
- Este prima cheie folosită pentru a identifica în mod unic una și o singură instanță a unei entități. O entitate poate conține mai multe chei, așa cum am văzut în tabelul PERSON. Cheia care este cea mai potrivită din aceste liste devine o cheie primară.
- În tabelul ANGAJAT, ID-ul poate fi cheia principală, deoarece este unică pentru fiecare angajat. În tabelul EMPLOYEE, putem chiar să selectăm License_Number și Passport_Number ca chei primare, deoarece acestea sunt, de asemenea, unice.
- Pentru fiecare entitate, selecția cheii primare se bazează pe cerințe și pe dezvoltatori.
2. Cheia candidatului
- O cheie candidată este un atribut sau un set de atribute care pot identifica în mod unic un tuplu.
- Cu excepția cheii primare, atributele rămase sunt considerate o cheie candidată. Cheile candidate sunt la fel de puternice ca și cheia primară.
De exemplu: În tabelul ANGAJAT, id-ul este cel mai potrivit pentru cheia primară. Restul atributelor, cum ar fi SSN, Passport_Number, License_Number etc., sunt considerate o cheie candidată.
3. Super Cheie
Super-cheia este un set de atribute care poate identifica în mod unic un tuplu. O super-cheie este un superset al unei chei candidate.
De exemplu: În tabelul EMPLOYEE de mai sus, pentru (EMPLOYEE_ID, EMPLOYEE_NAME), numele a doi angajați poate fi același, dar EMPLYEE_ID-ul lor nu poate fi același. Prin urmare, această combinație poate fi și o cheie.
Super-cheia ar fi EMPLOYEE-ID (EMPLOYEE_ID, EMPLOYEE-NAME), etc.
4. Cheie străină
- Cheile externe sunt coloana tabelului folosită pentru a indica cheia primară a altui tabel.
- Fiecare angajat lucrează într-un anumit departament dintr-o companie, iar angajatul și departamentul sunt două entități diferite. Deci nu putem stoca informațiile departamentului în tabelul angajaților. De aceea legăm aceste două tabele prin cheia primară a unui singur tabel.
- Adăugăm cheia primară a tabelului DEPARTAMENT, Department_Id, ca un nou atribut în tabelul EMPLOYEE.
- În tabelul EMPLOYEE, Department_Id este cheia externă, iar ambele tabele sunt legate.
5. Tasta alternativă
Pot exista unul sau mai multe atribute sau o combinație de atribute care identifică în mod unic fiecare tuplu dintr-o relație. Aceste atribute sau combinații ale atributelor sunt numite chei candidate. O cheie este aleasă ca cheie primară dintre aceste chei candidate, iar cheia candidată rămasă, dacă există, este denumită cheie alternativă. Cu alte cuvinte, numărul total de chei alternative este numărul total de chei candidate minus cheia primară. Cheia alternativă poate exista sau nu. Dacă există o singură cheie candidată într-o relație, aceasta nu are o cheie alternativă.
De exemplu, Relația cu angajații are două atribute, Employee_Id și PAN_No, care acționează ca chei candidat. În această relație, Employee_Id este aleasă ca cheie primară, astfel încât cealaltă cheie candidată, PAN_No, acționează ca cheie alternativă.
coarda inversată în c
6. Cheie compusă
Ori de câte ori o cheie primară constă din mai mult de un atribut, este cunoscută ca o cheie compusă. Această cheie este cunoscută și sub denumirea de cheie concatenată.
De exemplu, în relațiile cu angajații, presupunem că unui angajat i se pot atribui mai multe roluri, iar un angajat poate lucra la mai multe proiecte simultan. Deci, cheia primară va fi compusă din toate cele trei atribute, și anume Emp_ID, Emp_role și Proj_ID în combinație. Deci aceste atribute acționează ca o cheie compusă, deoarece cheia primară cuprinde mai mult de un atribut.
7. Cheie artificială
Cheile create folosind date alocate arbitrar sunt cunoscute ca chei artificiale. Aceste chei sunt create atunci când o cheie primară este mare și complexă și nu are nicio relație cu multe alte relații. Valorile de date ale cheilor artificiale sunt de obicei numerotate într-o ordine serială.
De exemplu, cheia primară, care este compusă din Emp_ID, Emp_role și Proj_ID, este mare în relațiile cu angajații. Deci, ar fi mai bine să adăugați un nou atribut virtual pentru a identifica fiecare tuplu din relație în mod unic.