Hva er SQL-begrensninger og dens forskjellige typer?



Denne artikkelen er en omfattende guide om hvordan du bruker de forskjellige typene SQL-begrensninger med forskjellige SQL-kommandoer, og utdypet det samme med eksempler.

Siden store mengder data er tilstede i , er det veldig viktig for oss alle å øke nøyaktigheten og påliteligheten til data som finnes i databasen. SQL-begrensningene brukes til å opprettholde det samme. Det er forskjellige typer begrensninger som kan brukes. I denne artikkelen vil jeg diskutere disse begrensningene med eksempler.

Følgende emner vil bli dekket i denne artikkelen:





  1. Hva er begrensninger?
  2. Begrensninger tilgjengelig i SQL:

Hva er SQL-begrensninger?

SQL-begrensninger brukes til å spesifisere reglene for dataene i en tabell. Disse brukes til å begrense hvilken type data som må lagres i databasen, og tar sikte på å øke nøyaktigheten og påliteligheten til dataene som er lagret i databasen.

Så begrensninger sørger for at det ikke er noe brudd i form av en transaksjon av dataene, men det er likevel noe brudd funnet at handlingen blir avsluttet.



Det er to typer begrensninger som kan brukes:

  1. Begrensninger på kolonnivå - Disse begrensningene blir brukt på en enkelt kolonne
  2. Begrensninger på bordnivå - Disse begrensningene gjelder for hele tabellen

La oss gå videre i denne artikkelen, og la oss forstå de forskjellige typene begrensninger. Jeg skal også vurdere følgende tabell for å hjelpe deg med å forstå bedre.

Ulike tilgjengelige SQL-begrensninger:

IKKE NULL Begrensning

IKKE NULL-begrensningen sørger for at en kolonne ikke kan ha en NULL-verdi. Du kan bruke IKKE NULL-begrensningen heller mens lage bordet databasen eller mens du endrer den.



Eksempel

IKKE NULL Begrensning på CREATE TABLE

Skriv et spørsmål for å opprette studenttabellen ovenfor, der StudentID og Studentnavn ikke kan være NULL.

OPPRETT TABELL Studenter (StudentID int IKKE NULL, StudentName varchar (255) IKKE NULL, Age int, City varchar (255))

IKKE NULL Begrensning på ALTER TABLE

Skriv et spørsmål for å endre studenttabellen ovenfor, der en ny kolonne med DOB må legges til, og den ikke skal ha noen NULL-verdier.

ALTER TABLE Studentene TILLEGG KOLONN DOB år IKKE NULL

Fortsett i denne artikkelen om SQL-begrensninger, la oss forstå hvordan vi bruker den UNIKE begrensningen.

UNIK begrensning

UNIQUE-begrensningen brukes til å sikre at alle verdiene i en kolonne er unike. Du kan bruke UNIQUE-begrensningen enten på flere kolonner eller på en enkelt kolonne med. Bortsett fra dette, kan du gå fremover og bruke UNIQUE-begrensningen til å endre de eksisterende tabellene.

Merk:

  1. Når du oppretter tabeller, har en PRIMÆR Nøkkelbegrensning automatisk en UNIK begrensning, for å garantere det unike ved en kolonne.
  2. En tabell kan ha mange UNIKE begrensninger, men kan ha en enkelt primærnøkkelbegrensning.

Eksempel:

UNIK begrensning på CREATE TABLE

Skriv et spørsmål for å lage en tabell Students, med kolonnene StudentID, StudentName, Age og City. Her må StudentID være unik for hver eneste plate.

OPPRETT TABELL Studenter (StudentID int IKKE NULL UNIK, Studentnavn varchar (255) IKKE NULL, Age int, City varchar (255))

Navngi en UNIK begrensning på flere kolonner

For å navngi en unik begrensning og definere den for flere kolonner, kan du se følgende eksempel:

koblet listeimplementering i c

Skriv et spørsmål for å lage en tabell Students, med kolonnene StudentID, StudentName, Age og City. Her må StudentID og StudentName være unike for hver eneste plate.

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

Her er Stu_Example navnet gitt til den unike begrensningen som brukes på StudentID og StudentName.

UNIK begrensning på ALTER TABLE

Skriv et spørsmål for å endre Student-tabellen, der en UNIK begrensning må legges til StudentID-kolonnen.

ALTER TABLE Students ADD UNIQUE (StudentID)

På samme måte, hvis du vil bruke UNIQUE-begrensningen på flere kolonner og også gi den navnet, kan du skrive et spørsmål som følger:

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

Slipp en UNIK begrensning

For å slippe begrensningen som er spesifisert i en kolonne, kan du bruke navnekonvensjonen som du kanskje har nevnt mens du legger til begrensningen.

For eksempel, hvis vi må skrive et spørsmål for å slippe den UNIKE begrensningen vi opprettet ovenfor, kan du skrive spørringen som følger:

ALTER TABLE Students DROP CONSTRAINT Stu_Example

Neste i denne artikkelen om SQL-begrensninger, la oss forstå hvordan vi bruker CHECK-begrensningen.

CHECK begrensning

CHECK-begrensningen sørger for at alle verdier i en kolonne tilfredsstiller en bestemt tilstand.

Eksempel:

CHECK begrensning på CREATE TABLE

Skriv et spørsmål for å lage en tabell Students, med kolonnene StudentID, StudentName, Age og City. Her må byen være MUmbai.

OPPRETT TABELL Studenter (StudentID int IKKE NULL UNIK, Studentnavn varchar (255) IKKE NULL, Alder int, City varchar (255) CHECK (City == ’Mumbai’))

CHECK begrensning på flere kolonner

For å bruke sjekkbegrensningen på flere kolonner kan du skrive et spørsmål som nedenfor:

Skriv et spørsmål for å lage en tabell Students, med kolonnene StudentID, StudentName, Age og City. Her må byen være Mumbai, og studentenes alder må være> 19 år.

OPPRETT TABELL Studenter (StudentID int IKKE NULL, Studentnavn varchar (255) IKKE NULL, Age int, City varchar (255) CHECK (By == & rsquoMumbai & rsquo OG Alder> 19))

På samme måte kan du også bruke CHECK-begrensningen med ALTER TABLE-kommandoen. Se nedenfor.

CHECK begrensning på ALTER TABLE

Skriv et spørsmål for å endre studenttabellen, der en CHECK-begrensning må legges til bykolonnen. Her må byen være Mumbai.

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

På samme måte, hvis du vil bruke CHECK-begrensningen ved å gi den et navn, kan du skrive et spørsmål som følger:

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

Slipp en CHECK-begrensning

For å slippe begrensningen som er spesifisert i en kolonne, kan du bruke navnekonvensjonen som du kanskje har nevnt mens du legger til begrensningen.

Hvis vi for eksempel må skrive et spørsmål for å slippe CHECK-begrensningen vi opprettet ovenfor, kan du skrive spørringen som følger:

ALTER TABLE Students DROP CONSTRAINT StuCheckExample

Fortsett i denne artikkelen om SQL-begrensninger, la oss forstå hvordan du bruker DEFAULT-begrensningen.

STANDARD Begrensning

DEFAULT-begrensningen brukes til å nevne et sett med standardverdier for en kolonne når ingen verdi er spesifisert. I likhet med de andre begrensningene, kan vi bruke denne begrensningen på CREATE og ALTER-tabellkommandoen.

Eksempel

Skriv et spørsmål for å lage en tabell Students, med kolonnene StudentID, StudentName, Age og City. Også når det ikke er lagt inn noen verdi i bykolonnen, må Delhi automatisk inkluderes.

OPPRETT TABELL Studenter (StudentID int IKKE NULL, StudentName varchar (255) IKKE NULL, Age int, City varchar (255) STANDARD ‘Delhi’)

STANDARD Begrensning på ALTER TABLE

For å bruke DEFAULT-begrensningen med ALTER TABLE-kommando , kan du skrive et spørsmål som følger:

ALTER TABLE Students ADD CONSTRAINT StuDefauExample STANDARD 'Mumbai' FOR City

Slipp en standardbegrensning

For å slippe begrensningen STANDARD kan du bruke ALTER TABLE-kommandoen som følger:

ALTER TABLE Students ALTER COLUMN City DROP STANDARD

Neste i denne artikkelen om SQL-begrensninger, la oss forstå hvordan vi bruker INDEX-begrensningen.

pojo-klasse i java med eksempel

INDEX-begrensning

INDEKSENbegrensning brukes til å lage indekser i tabellen. Ved hjelp av disse indeksene kan du opprette og hente data fra databasen veldig raskt.

Syntaks

- Opprett en indeks der dupliserte verdier er tillatt CREATE INDEX IndexName ON TableName (ColumnName1, ColumnName2, ... ColumnName (N)) - Opprett en indeks der duplikatverdier ikke er tillatt CREATE UNIK INDEX IndexName ON TableName (ColumnName1, ColumnName2, ... Kolonnenavn (N))

Eksempel

Skriv et spørsmål for å lage en indeks med navnet Stu_index på Students-tabellen som lagrer StudentName.

OPPRETT INDEKS Stu_index PÅ studenter (studentnavn)

På samme måte må du bruke DROP-kommandoen med navnet på indeksen for å slette en indeks fra tabellen.

DROP INDEX Students.Stu_index

Bortsett fra de ovennevnte begrensningene PRIMÆRNØKKEL og UTENLANDSK Nøkkel blir også sett på som begrensninger. PRIMARY KEY-begrensningen brukes til å definere begrensninger for hvordan en bestemt kolonne unikt identifiserer hver tuple. De UTENLANDSK NØKKEL begrensning brukes til å relatere to tabeller basert på et forhold.

Med dette kommer vi til en slutt på denne artikkelen. Jeg håper du forsto hvordan du bruker de forskjellige begrensningene i databasen. Hvis du ønsker å lære mer om MySQL og bli kjent med denne åpen kildekode-relasjonsdatabasen, så sjekk ut vår som kommer med instruktørstyrt liveopplæring og reell prosjektopplevelse. Denne opplæringen vil hjelpe deg med å forstå MySQL grundig og hjelpe deg med å mestre emnet.

Har du spørsmål til oss? Vennligst nevn det i kommentarfeltet i denne artikkelen om SQL-begrensninger, så kommer jeg tilbake til deg.