Introducere în constrângerile SQL
Constrângerile SQL sunt condiții care se aplică coloanelor unui tabel, pentru a restricționa coloana pentru acceptarea anumitor valori sau pentru a vă asigura doar că o anumită condiție este îndeplinită pentru fiecare valoare din coloană. Constrângerile oferă un mecanism clasic pentru a păstra integritatea și corectitudinea datelor din tabel.
În SQL, avem multe tipuri diferite de constrângeri. Să ne uităm la următoarele câteva constrângeri din acest articol.
- NU NUL
- VERIFICA
- UNIC
- CHEIA PRINCIPALA
- CHEIE EXTERNĂ
- MOD IMPLICIT
Diferite tipuri de restricții SQL
1. NU NUL constrângere
Această constrângere este folosită atunci când nu doriți ca nicio valoare din acea anumită coloană să fie o valoare Null. Aceasta înseamnă că nu putem introduce o valoare nulă pentru acea coloană în timp ce introducem un nou rând în tabel. Fiecare câmp din această coloană are întotdeauna o valoare nulă. O valoare nulă înseamnă că un anumit câmp a fost lăsat gol, iar valorile precum spațiul zero sau spațiul liber nu se încadrează în valorile nule.
Să ne uităm la un exemplu pentru a crea un tabel numit Angajat, având 5 coloane, în care coloanele empid, nume și mobile nu acceptă valori NULL.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL,
address VARCHAR(20)
);
2. VERIFICĂ CONSTRUIREA
Această constrângere limitează valorile care pot fi introduse în acea anumită coloană a tabelului. Pentru a înțelege mai bine acest lucru, să luăm exemplul de acordare a notelor la un examen. Gama de valori pentru aceste mărci poate fi de la 35 la 100. Pentru a ne asigura că sunt introduse doar valorile din acest interval, putem crea o constrângere VERIFICARE.
Să ne uităm la un exemplu de creare a unei constrângeri de VERIFICARE a salariului angajaților.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL,
salary INT CHECK (salary >= 15000 AND salary <= 30000),
address VARCHAR(20)
);
3. Constrângerea UNICĂ
Această constrângere este aplicată pentru a asigura că coloana particulară acceptă doar valori unice, iar valorile repetitive nu sunt permise cu o astfel de constrângere pe coloană. Putem crea mai multe constrângeri UNICE pe diverse coloane dintr-un tabel. O constrângere UNICĂ permite introducerea valorilor NULL.
Să ne uităm la un exemplu de aplicare a constrângerii UNICE. În acest exemplu, creăm o coloană numită mobil, în tabelul Angajat, care trebuie să fie unic și nu poate accepta același număr de telefon de două ori.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20)
);
4. ÎNCĂRCARE PRINCIPALĂ
Această constrângere este utilizată pentru a identifica o anumită coloană sau un grup de coloane care pot identifica în mod unic un rând în tabel. Cu restricția PRIMARY KEY în loc, orice rând nu poate avea o valoare duplicată. Nu putem avea NULL ca valoare pentru o astfel de coloană. Chiar dacă atât o restricție PRIMAR KEY, cât și o constrângere UNICĂ impun ca valorile să fie unice, folosim o constrângere UNICĂ pentru atunci când nu dorim să declaram coloana ca Cheie Primară, dar dorim totuși ca valorile din acea coloană să fie unice. . Putem avea doar o singură coloană PRIMAR KEY sau un grup de coloane într-un tabel, dar putem declara multe coloane individuale ca fiind UNICE.
Să ne uităm la un exemplu de tabel angajați, creând ID-uri de angajare unice, prin urmare, putem declara coloana empid ca fiind cheia PRIMARĂ.
CREATE TABLE Employee (
empid INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20)
);
5. Restrângerea cheii externe
Această constrângere ajută datele dintr-un tabel să stabilească o relație cu datele dintr-un alt tabel din baza de date. Cheia externă poate fi o singură coloană sau un set de coloane. Să luăm în considerare două tabele, angajați și departamente. Să presupunem că avem o coloană numită descrisă în Angajat și plecată în departamente. În cazul în care coloanele se potrivesc, trimitem angajații la departamentul departamentelor. În acest caz, coloana din Angajat devine o referință de cheie străină la coloana din tabelul Departament, care este o cheie primară.
CREATE TABLE Employee (
empid INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20),
depicted INT FOREIGN KEY REFERENCES Department(depicted)
);
6. Restrângere DEFAULT
Această constrângere este utilizată pentru a specifica valoarea implicită pentru o anumită coloană din tabel. În acest fel, dacă nu există o valoare inserată în mod explicit pentru acea coloană, motorul bazei de date se poate referi întotdeauna la valoarea implicită specificată și o poate introduce în coloană. Să presupunem că am inserat o coloană cu constrângerea NOT NULL și, de asemenea, cu constrângerea DEFAULT, atunci nu este necesar să definim explicit o valoare implicită. Chiar și fără a da o valoare implicită, rândul special va fi introdus în tabel.
Să ne uităm la un exemplu în care am introdus locul în adresă în mod implicit pentru a avea valoarea „India”.
CREATE TABLE Employee (
empid INT NOT NULL PRIMARY KEY,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20) DEFAULT 'India',
depicted INT FOREIGN KEY REFERENCES Department(depicted),
);
Concluzie
Constrângerile SQL ajută dezvoltatorul specificând restricții și reguli pentru datele care urmează să fie inserate în tabel. Constrângerile pot fi aplicate la nivelul coloanei, doar la coloana particulară sau la nivelul tabelului, unde restricțiile sunt aplicate tabelului complet. Aceste constrângeri restricționează tipul de informații care pot fi introduse în tabel. Acest lucru garantează corectitudinea și coerența datelor din tabel. În cazul încălcării regulilor specificate de constrângeri, acțiunea este încheiată.
Articole recomandate
Acesta este un ghid pentru limitările SQL. Aici vom discuta introducerea la restricțiile SQL împreună cu diferite tipuri de constrângeri SQL, care includ constrângeri Not Null, Check, Unic, Primar, străin și implicit. Puteți parcurge și alte articole sugerate pentru a afla mai multe -
- Baza de date în SQL
- Utilizări SQL
- Tabel în SQL
- Cheie externă în SQL
- Comparație de cheie primară și cheie străină