Introducere în cheile SQL
Cheile sunt câmpuri din tabelul relațional care creează relații între alte tabele, mențin integritatea, unicitatea, etc. În acest subiect, vom afla despre cheile SQL.
În RDBMS, Cheile joacă un rol important. Aceasta participă la activitățile multiple din baza de date relațională. Utilizarea tastei poate face recuperarea datelor mult mai rapidă și mai eficientă. Poate stabili relația în două sau mai multe tabele. Utilizarea cheilor ne permite să păstrăm date valide și coerente în baza de date. De asemenea, a fost identificată în mod unic un tuple (rând) din tabel. Aceste tabele pot avea mai multe coloane.
În viața reală, un tabel poate avea mai multe taste. Toate coloanele pot fi, de asemenea, declarate drept chei și aceste chei pot fi aplicate de baza de date.
Sintaxă:
CREATE TABLE `customer` (
`cust_id` int(11) NOT NULL,
`cust_name` varchar(100) NOT NULL,
`cust_address` text NOT NULL,
`cust_aadhaar_number` varchar(50) DEFAULT NULL,
`cust_pan_number` varchar(50) NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
ALTER TABLE `customer` ADD PRIMARY KEY (`cust_id`);
În interogarea SQL de mai sus, putem vedea cum o coloană „cust_id” este setată ca cheie primară.
Tipul de chei SQL
Mai multe tipuri de chei sunt acceptate de SQL Server.
Următoarele sunt listele de chei SQL:
- Cheia principala
- Cheia unică
- Cheia candidatului
- Cheie alternativă
- Cheia compusă
- Super cheie
- Cheie externă
De exemplu
Tabelul clienților | ||||
cust_id | CUST_NAME | cust_address | cust_aadhaar_number | cust_pan_number |
100001 | Sunil Kumar | Noida | 372464389211 | ADSFS3456K |
100002 | Ankit Gupta | Gr Noida | 442289458453 | CGHAD7583L |
100003 | Suresh Yadav | New Delhi | 878453444144 | NMKRT2278O |
100004 | Nilam Singh | Lucknow | 227643441123 | HFJFD3876U |
100005 | Amal Rawat | Ghaziabad | 932571156735 | CBMVA9734A |
100006 | Saxena aspră | Kanpur | 1453534363319 | TRYUC2568H |
Mai jos este prezentat tabelul „Comandă” cu datele aferente corespunzătoare „cust_id” din tabelul clienților.
Tabelul comenzilor | ||
cust_id | order_month_year | cantitatea comenzii |
100001 | 2019 - ian | 100.000 $ |
100002 | 2019 - ian | $ 120.000 de |
100003 | 2019 - ian | 100.000 $ |
100004 | 2019 - ian | $ 110.000 de |
100001 | 2019 - Feb | $ 105.000 de |
100002 | 2019 - Feb | $ 125.000 |
Acum, vom parcurge unul câte unul pe fiecare dintre cheile:
1. cheie primară
Cheia primară este un câmp care poate fi utilizat pentru a identifica toate tuplurile în mod unic din baza de date. Doar una dintre coloane poate fi declarată drept cheie primară. O cheie primară nu poate avea o valoare NULL.
Exemplu: în tabelul relațional dat mai sus, „cust_id” este cheia primară deoarece poate identifica toate rândurile în mod unic din tabel.
2. Cheie unică
Cheia unică poate fi un câmp sau un set de câmpuri care pot fi utilizate pentru identificarea unică a tuplei din baza de date. Unul sau mai multe câmpuri pot fi declarate ca cheie unică. Coloana unică Cheie poate deține și valoarea NULL. Utilizarea cheii unice îmbunătățește performanța preluării datelor. Face căutarea înregistrărilor din baza de date mult mai rapidă și mai eficientă.
Exemplu: în tabelul relațional dat mai sus, „cust_aadhaar_number”, „cust_pan_number” sunt cheia unică deoarece pot permite o valoare ca NULL în coloană
3. Cheia candidatului
Cheia candidatului poate fi o coloană sau un grup de coloane care se pot califica pentru cheia unică. Fiecare tabel are cel puțin o cheie de candidat. Un tabel poate avea una sau mai multe chei de candidat. Fiecare cheie de candidat poate funcționa ca cheie primară, dacă este necesar în anumite scenarii.
Exemplu: În tabelul relațional dat mai sus, „cust_id”, „cust_aadhaar_number”, „cust_pan_number” sunt cheia Candidat, deoarece pot identifica toate rândurile în mod unic din tabel. Aceste coloane califică, de asemenea, criteriile pentru a fi o cheie primară.
4. Cheie alternativă
Cheia alternativă este acea cheie care poate fi folosită ca cheie primară, dacă este necesar. Cheia alternativă se califică de asemenea ca cheie primară, dar deocamdată nu este cheia primară.
Exemplu: În tabelul relațional dat mai sus, „cust_aadhaar_number”, „cust_pan_number” sunt cheia alternativă, deoarece ambele coloane pot fi o cheie primară, dar încă nu au fost selectate pentru cheia primară.
5. Cheia compusă
Cheia compusă este, de asemenea, cunoscută sub numele de cheie compusă / cheie concatenată. Cheia compusă se referă la un grup de două sau mai multe coloane care pot fi utilizate pentru a identifica un tuple din tabel în mod unic. Un grup al coloanei în combinație între ele poate identifica un rând în mod unic, dar o singură coloană a acelui grup nu promite să identifice rândul în mod unic.
Exemplu: în tabelul relațional dat mai sus, adică Tabelul de ordine, grupul „cust_id”, „order_month_year” al acestor coloane utilizate în combinație pentru a identifica tuple în mod unic în tabelul de ordine. Coloana individuală a acestui tabel nu este în măsură să identifice tuple în mod unic din tabelul Comenzi.
6. Super cheie
Super Key este o combinație de coloane, fiecare coloană a tabelului rămâne dependentă de ea. Super-cheie poate avea alte grupuri în grup, care pot fi sau nu necesare pentru a identifica în mod unic tupla din tabel. Cheia candidatului este subsetul Super cheie. Cheia candidatului este cunoscută și sub numele de cheie super-cheie.
Exemplu: în tabelul relațional dat mai sus, Cheia primară, Cheia de candidat și Cheia unică este Super-cheie. Ca o singură coloană din tabelul clienților, adică „cust_id” este suficientă pentru a identifica tuplurile în mod unic din tabel. Orice set al coloanei care conține „cust_aadhaar_number”, „cust_pan_number” este o cheie super.
7. Cheie externă
O cheie străină este o coloană care este cunoscută drept cheie primară în celălalt tabel, adică o cheie primară dintr-un tabel poate fi denumită cheie străină într-un alt tabel. Cheia străină poate avea valori duplicate & NULL dacă este definită pentru a accepta valori NULL.
Exemplu: în tabelul relațional dat mai sus, „cust_id” este cheia primară în tabelul Client, dar „cust_id” în tabelul Comenzii cunoscut sub numele de „Cheie externă”. Cheia externă dintr-un tabel devine întotdeauna cheia primară pe cealaltă tabelă.
Imaginea de mai sus afișează modul în care fiecare coloană este arătată ca o cheie în funcție de calificarea lor pentru a identifica tuplurile în mod unic din tabel. Screenshot rezumă toată Cheia prin utilizarea tabelului relațional.
Concluzie - Chei SQL
Cheile SQL este unul dintre atributele bazei de date relaționale. care joacă roluri importante pentru a stabili o relație între două sau mai multe tabele. De asemenea, ajută interogările să execute mai rapid, adică recuperarea înregistrărilor din baza de date devine mult mai rapidă folosind cheile. De asemenea, tastele setează diferitele constrângeri pentru identificarea unică a tuplurilor din datele mari.
Articole recomandate
Acesta este un ghid pentru cheile SQL. Aici discutăm introducerea în cheile SQL și 7 tipuri diferite, cu un exemplu adecvat în detaliu. De asemenea, vă puteți uita la articolul următor.
- Cuvânt cheie distins în SQL
- Cursori în SQL
- Cheie externă în SQL
- Tranzacții în SQL