Introduktion til SQL-begrænsninger
SQL-begrænsninger er betingelser, der anvendes til kolonner i en tabel, for at begrænse kolonnen til at acceptere bestemte værdier eller for bare at sikre dig, at en bestemt betingelse er opfyldt for hver værdi i kolonnen. Begrænsninger tilbyder en klassisk mekanisme til at bevare integriteten og korrektheden af dataene i tabellen.
I SQL har vi mange forskellige slags begrænsninger. Lad os se på de følgende få begrænsninger i denne artikel.
- IKKE NULL
- KONTROLLERE
- ENESTÅENDE
- PRIMÆRNØGLE
- FREMMED NØGLE
- STANDARD
Forskellige slags SQL-begrænsninger
1. IKKE NULL Begrænsning
Denne begrænsning bruges, når du ikke ønsker, at nogen værdi i den bestemte kolonne skal være en Null-værdi. Dette betyder, at vi ikke kan indsætte en Null-værdi for den kolonne, mens vi indsætter en ny række i tabellen. Hvert felt i denne kolonne har altid en ikke-nul værdi. En nullværdi betyder, at et bestemt felt er blevet tomt, og værdier som nul eller tom plads hører ikke under Nul-værdier.
Lad os se på et eksempel til at oprette en tabel kaldet Medarbejder, der har 5 kolonner, hvor empid, navn og mobilkolonner ikke accepterer NULL-værdier.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL,
address VARCHAR(20)
);
2. Kontroller begrænsningen
Denne begrænsning begrænser de værdier, der kan indtastes i den bestemte kolonne i tabellen. For at forstå dette bedre, lad os tage eksemplet med at give karakterer i en eksamen. Værdiområdet for disse markeringer kan kun være fra 35 til 100. For at sikre, at der kun indtastes værdier i dette interval, kan vi oprette en CHECK-begrænsning.
Lad os se på et eksempel på at skabe en CHECK-begrænsning for lønningen for medarbejdere.
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. UNIK Begrænsning
Denne begrænsning anvendes for at sikre, at den bestemte kolonne kun accepterer unikke værdier, og gentagne værdier ikke er tilladt med en sådan begrænsning i kolonnen. Vi kan oprette flere unikke begrænsninger på forskellige kolonner i en tabel. En unik begrænsning gør det muligt at indtaste NULL-værdier.
Lad os se på et eksempel på håndhævelse af UNIK-begrænsningen. I dette eksempel opretter vi en kolonne kaldet mobil i tabellen Medarbejder, som skal være unik og ikke kan acceptere det samme mobilnummer to gange.
CREATE TABLE Employee (
empid INT NOT NULL,
name VARCHAR(20) NOT NULL,
dob DATE,
mobile VARCHAR(10) NOT NULL UNIQUE,
address VARCHAR(20)
);
4. PRIMÆR NØGLEBEGRÆNSNING
Denne begrænsning bruges til at identificere en bestemt kolonne eller en gruppe kolonner, der unikt kan identificere en række i tabellen. Med den primære nøglebegrænsning på plads kan enhver række ikke have en duplikatværdi. Vi kan ikke have NULL som værdien for en sådan kolonne. Selvom både en PRIMARY KEY-begrænsning og en UNIK begrænsning indfører, at værdierne skal være unikke, bruger vi en UNIK-begrænsning til, når vi ikke ønsker at erklære kolonnen som Primær nøgle, men stadig ønsker, at værdierne i denne kolonne skal være unikke . Vi kan kun have en enkelt PRIMÆRT Nøglekolonne eller gruppe af kolonner i en tabel, men vi kan erklære, at mange individuelle kolonner er UNIK.
Lad os se på et eksempel på medarbejdertabellen og skabe unikke medarbejder-id'er, derfor kan vi erklære empid-kolonnen til at være den PRIMÆRKE Nøgle.
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. UDENLANDSK Nøglebegrænsning
Denne begrænsning hjælper dataene i en tabel til at etablere et forhold til dataene i en anden tabel i databasen. Fremmed nøgle kan være en enkelt kolonne eller et sæt kolonner. Lad os overveje to tabeller, medarbejder og afdelinger. Antag, at vi en kolonne kaldet afbildet i Medarbejder og en afgang i afdelinger. Vi kan henvise den afgåede af medarbejderen til de afgangene fra afdelingerne, hvis kolonnerne stemmer overens. I dette tilfælde bliver kolonnen i Medarbejder en fremmed nøglehenvisning til kolonnen i afdelingstabellen, som er en primær nøgle.
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. DEFAULT begrænsning
Denne begrænsning bruges til at specificere standardværdien for en bestemt kolonne i tabellen. Denne måde, hvis der ikke er indsat nogen værdi for den kolonne eksplicit, kan databasemotoren altid henvise til den angivne standardværdi og indsætte den i kolonnen. Antag, at vi har indsat en kolonne med begrænsningen IKKE NULL og også med begrænsningen DEFAULT, så behøver vi ikke eksplicit at definere en standardværdi. Selv uden at give en standardværdi, indsættes den bestemte række i tabellen.
Lad os se på et eksempel, hvor vi som standard har indtastet stedet i adressen for at have værdien 'Indien'.
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),
);
Konklusion
SQL-begrænsninger hjælper udvikleren ved at specificere begrænsninger og regler for de data, der skal indsættes i tabellen. Begrænsninger kan anvendes på kolonniveau, bare på den bestemte kolonne eller på bordniveau, hvor begrænsningerne anvendes til den komplette tabel. Disse begrænsninger begrænser den type information, der kan indsættes i tabellen. Dette garanterer rigtigheden og konsistensen af dataene i tabellen. I tilfælde af overtrædelse af reglerne, der er specificeret i begrænsningerne, afsluttes handlingen.
Anbefalede artikler
Dette er en guide til SQL-begrænsninger. Her diskuterer vi introduktionen til SQL-begrænsninger sammen med forskellige slags SQL-begrænsninger, der inkluderer ikke-nul, check, unik, primær, udenlandsk og standard-begrænsninger. Du kan også gennemgå vores andre foreslåede artikler for at lære mere–
- Database i SQL
- Anvendelser af SQL
- Tabel i SQL
- Fremmed nøgle i SQL
- Sammenligning af primær nøgle vs udenlandsk nøgle