Vilka är SQL-begränsningar och dess olika typer?



Den här artikeln är en omfattande guide om hur man använder olika typer av SQL-begränsningar med olika SQL-kommandon och utarbetade samma med exempel.

Eftersom stora mängder data finns i , är det mycket viktigt för oss alla att öka noggrannheten och tillförlitligheten hos data som finns i databasen. Tja, SQL-begränsningarna används för att upprätthålla samma. Det finns olika typer av begränsningar som kan användas. I den här artikeln kommer jag att diskutera dessa begränsningar med exempel.

Följande ämnen kommer att behandlas i den här artikeln:





  1. Vad är begränsningar?
  2. Begränsningar tillgängliga i SQL:

Vad är SQL-begränsningar?

SQL-begränsningar används för att specificera reglerna för data i en tabell. Dessa används för att begränsa vilken typ av data som måste lagras i databasen och syftar till att öka noggrannheten och tillförlitligheten hos de data som lagras i databasen.

Så, begränsningar se till att det inte finns någon överträdelse när det gäller en transaktion av data, men det finns någon överträdelse som upptäcks att åtgärden avslutas.



Det finns två typer av begränsningar som kan tillämpas:

  1. Begränsningar på kolumnivå - Dessa begränsningar tillämpas på en enda kolumn
  2. Begränsningar på bordsnivå - Dessa begränsningar är tillämpningen i hela tabellen

Framåt i den här artikeln, låt oss förstå de olika typerna av begränsningar. Jag kommer också att överväga följande tabell för att hjälpa dig att förstå bättre.

Olika SQL-begränsningar tillgängliga:

INTE NULL begränsning

Icke-NULL-begränsningen ser till att en kolumn inte kan ha ett NULL-värde. Du kan använda begränsningen NOT NULL antingen medan skapa bordet databas eller när du ändrar den.



Exempel

INTE NULL begränsning på CREATE TABLE

Skriv en fråga för att skapa ovanstående Students-tabell, där StudentID och StudentName inte kan vara NULL.

SKAPA TABELL Studenter (StudentID int NOT NULL, StudentName varchar (255) NOT NULL, Age int, City varchar (255))

INTE NULL begränsning på ALTER TABLE

Skriv en fråga för att ändra ovanstående Studenttabell, där en ny kolumn med DOB måste läggas till, och den ska inte ha några NULL-värden.

ALTER TABLE Studenter LÄGG TILL KOLONN DOB-år INTE NULL

Gå vidare i den här artikeln om SQL-begränsningar, låt oss förstå hur man använder den UNIKA begränsningen.

Unik begränsning

UNIQUE-begränsningen används för att se till att alla värden i en kolumn är unika. Du kan använda UNIQUE-begränsningen antingen i flera kolumner eller i en enda kolumn med. Bortsett från detta kan du gå framåt och använda UNIQUE-begränsningen för att ändra de befintliga tabellerna.

Notera:

  1. När du skapar tabeller har en PRIMÄR KEY-begränsning automatiskt en UNIK begränsning för att garantera en kolumn unikhet.
  2. En tabell kan ha många UNIKA begränsningar men kan ha en enda primär nyckelbegränsning.

Exempel:

UNIK begränsning på CREATE TABLE

Skriv en fråga för att skapa en tabell Studenter med kolumner StudentID, Studentnamn, Ålder och Stad. Här måste StudentID vara unik för varje post.

SKAPA TABELL Studenter (StudentID int INTE NULL UNIKT, Studentnamn varchar (255) INTE NULL, Ålder int, City varchar (255))

Namnge en UNIK begränsning för flera kolumner

För att namnge en unik begränsning och för att definiera den för flera kolumner kan du hänvisa till följande exempel:

Skriv en fråga för att skapa en tabell Studenter med kolumner StudentID, Studentnamn, Ålder och Stad. Här måste StudentID och StudentName vara unika för varje post.

SKAPA TABELL Studenter (StudentID int NOT NULL, StudentName varchar (255) NOT NULL, Age int, City varchar (255) CONSTRAINT Stu_Example UNIQUE (StudentID, StudentName))

Här är Stu_Example namnet på den unika begränsning som tillämpas på StudentID och Studentnamn.

UNIK begränsning på ALTER TABLE

Skriv en fråga för att ändra tabellen Students där en UNIK begränsning måste läggas till i kolumnen StudentID.

ALTER TABLE Students ADD UNIQUE (StudentID)

På samma sätt, om du vill använda UNIQUE-begränsningen på flera kolumner och även namnge den, kan du skriva en fråga på följande sätt:

ALTER TABLE Students ADD CONSTRAINT Stu_Example UNIQUE (StudentID, StudentName)

Släpp en UNIK begränsning

För att släppa den begränsning som anges i en kolumn kan du använda namngivningskonventionen som du kanske har nämnt när du lägger till begränsningen.

Om vi ​​till exempel måste skriva en fråga för att släppa den UNIKA begränsningen som vi skapade ovan kan du skriva frågan enligt följande:

ALTER TABLE Studenter DROP CONSTRAINT Stu_Example

Nästa i den här artikeln om SQL-begränsningar, låt oss förstå hur man använder CHECK-begränsningen.

KONTROLLERA begränsning

CHECK-begränsningen ser till att alla värden i en kolumn uppfyller ett specifikt villkor.

Exempel:

KONTROLLERA begränsning på CREATE TABLE

Skriv en fråga för att skapa en tabell Studenter med kolumner StudentID, Studentnamn, Ålder och Stad. Här måste staden vara MUmbai.

SKAPA TABELL Studenter (StudentID int INTE NULL UNIKT, Studentnamn varchar (255) INTE NULL, Ålder int, Stad varchar (255) KONTROLL (Stad == ’Mumbai’))

KONTROLLERA begränsning för flera kolumner

För att använda kontrollbegränsningen på flera kolumner kan du skriva en fråga enligt nedan:

Skriv en fråga för att skapa en tabell Studenter med kolumner StudentID, Studentnamn, Ålder och Stad. Här måste staden vara Mumbai och studenternas ålder måste vara> 19.

SKAPA TABELL Studenter (StudentID int NOT NULL, StudentName varchar (255) NOT NULL, Age int, City varchar (255) CHECK (City == & rsquoMumbai & rsquo OCH ålder> 19))

På samma sätt kan du också använda begränsningen CHECK med ALTER TABLE-kommandot. Se nedan.

KONTROLLERA begränsning på ALTER TABLE

Skriv en fråga för att ändra tabellen Students, där en CHECK-begränsning måste läggas till i kolumnen Stad. Här måste staden vara Mumbai.

ALTER TABLE Students ADD CHECK (City == 'Mumbai')

På samma sätt, om du vill använda CHECK-begränsningen genom att ge den ett namn kan du skriva en fråga på följande sätt:

ALTER TABLE Students ADD CONSTRAINT StuCheckExample CHECK (City == 'Mumbai')

Släpp en CHECK-begränsning

För att släppa den begränsning som anges i en kolumn kan du använda namngivningskonventionen som du kanske har nämnt när du lägger till begränsningen.

Till exempel, om vi måste skriva en fråga för att släppa CHECK-begränsningen som vi skapade ovan, kan du skriva frågan enligt följande:

ALTER TABLE Students DROP CONSTRAINT StuCheckExample

Gå vidare i den här artikeln om SQL-begränsningar, låt oss förstå hur man använder DEFAULT-begränsningen.

STANDARD begränsning

DEFAULT-begränsningen används för att nämna en uppsättning standardvärden för en kolumn när inget värde anges. På samma sätt som de andra begränsningarna kan vi använda denna begränsning på kommandot CREATE och ALTER.

Exempel

Skriv en fråga för att skapa en tabell Studenter med kolumner StudentID, Studentnamn, Ålder och Stad. Även när inget värde har satts in i kolumnen City måste Delhi automatiskt inkluderas.

SKAPA TABELL Studenter (StudentID int NOT NULL, StudentName varchar (255) NOT NULL, Age int, City varchar (255) STANDARD 'Delhi')

STANDARD Begränsning på ALTER TABLE

För att använda begränsningen STANDARD med ALTER TABLE-kommando , kan du skriva en fråga på följande sätt:

modellvy controller java exempel
ALTER TABLE Students ADD CONSTRAINT StuDefauExempel STANDARD 'Mumbai' FÖR Stad

Släpp en STANDARD-begränsning

För att släppa begränsningen STANDARD kan du använda kommandot ALTER TABLE enligt följande:

ALTER TABLE Studenter ALTER COLUMN City DROP STANDARD

Nästa i den här artikeln om SQL-begränsningar, låt oss förstå hur man använder INDEX-begränsningen.

INDEX-begränsning

INDEXbegränsning används för att skapa index i tabellen. Med hjälp av dessa index kan du skapa och hämta data från databasen mycket snabbt.

Syntax

--Skapa ett index där dubbla värden är tillåtna CREATE INDEX IndexName ON TableName (ColumnName1, ColumnName2, ... ColumnName (N)) - Skapa ett index där duplicerade värden inte är tillåtna CREATE UNIQUE INDEX IndexName ON TableName (ColumnName1, ColumnName2, ... ColumnName (N))

Exempel

Skriv en fråga för att skapa ett index med namnet Stu_index på tabellen Students som lagrar studentnamnet.

CREATE INDEX Stu_index ON Students (StudentName)

På samma sätt, för att radera ett index från tabellen, måste du använda kommandot DROP med namnet på indexet.

DROP INDEX Students.Stu_index

Bortsett från ovanstående begränsningar PRIMÄRNYCKEL och UTLÄNDSK NYCKEL betraktas också som begränsningar. PRIMARY KEY-begränsningen används för att definiera begränsningar för hur en specifik kolumn unikt identifierar varje tupel. De FRÄMMANDE NYCKEL begränsning används för att relatera två tabeller baserat på en relation.

Med detta kommer vi till ett slut på den här artikeln. Jag hoppas att du förstod hur du använder de olika begränsningarna som finns i databasen. Om du vill lära dig mer om MySQL och lära känna denna open source-relationsdatabas och kolla in vår som kommer med instruktörsledad liveutbildning och verklig projektupplevelse. Denna utbildning hjälper dig att förstå MySQL på djupet och hjälper dig att behärska ämnet.

Har du en fråga till oss? Vänligen nämna det i kommentarsektionen i denna artikel om SQL-begränsningar så kommer jag tillbaka till dig.