Ikke Null-begrænsning

introduktion

når du opretter en tabel i postgraduate, har du mulighed for at tilføje visse begrænsninger i kolonnerne. Begrænsninger er særlige regler, der begrænser den type data, der kan gemmes i en given kolonne. En type begrænsning er ikke NULL-begrænsningen, som dikterer, at en given kolonne ikke kan indeholde null-værdier. I denne artikel vil vi se nærmere på begrænsningen ikke NULL og gennemgå nogle eksempler på, hvordan begrænsningen bruges.

forudsætninger

før du forsøger at følge med i denne tutorial, skal du sørge for, at disse vigtige forudsætninger er på plads:

  • sørg for, at er installeret og arbejder på din enhed. Kommandoen psql -V viser den version, der er installeret på din maskine.

  • du har brug for en grundlæggende viden om databasestyringssystemer og kommandoer.

Åbn kommandolinjegrænsefladen

for at udføre kommandoer skal vi åbne kommandolinjegrænsefladen psql.

der kræves to trin for at oprette forbindelse til psql kommandolinjekonsol.

den første kommando giver dig loginrettigheder som postgres superbruger, når du har indtastet adgangskoden:

1
sudo su-postgres

når vi har indtastet superbrugeradgangskoden, kan vi starte den interaktive terminal til Postgres:

1
pskl

når du har oprettet forbindelse til pskl-grænsefladen, kan du begynde at udføre forespørgsler og kommandoer i postgraduate.

postgraduate not null

som standard kan en datapost indeholde null-værdier i postgraduate. Brug af betingelsen ikke NULL håndhæver, at feltet skal indeholde en anden værdi end en null-værdi. Når denne begrænsning er på plads, kan du ikke indsætte eller opdatere en post uden at tilføje en værdi for det pågældende felt.

Opret en Database i postgraduate

lad os oprette en database, hvor vi kan teste IKKE NULL-begrænsningen. Sørg for, at det nye databasenavn, du vælger, er unikt.

for at oprette en ny database bruger vi følgende syntaks:

1
postgres= # Opret DATABASE db_name;

vi bruger navnet db_name til vores database, men du kan angive et hvilket som helst navn, du ønsker.

for at oprette forbindelse til databasen skal du indtaste \c efterfulgt af dit databasenavn. Du får besked om, at du nu har forbindelse til databasen “db_name” som bruger “postgres”.

Opret en tabel

for at oprette en tabel bruger vi denne grundlæggende syntaks:

1
2
Opret tabel Tabelnavn (kolonnenavn +
datatype + COLUMN_CONSTRAINT);

Bemærk, at datatypen er placeret efter kolonnenavnet, og den efterfølges af begrænsningen, hvis en bruges.

brug datatypen til at tilføje betingelsen ikke NULL

begrænsninger bruges til at definere reglerne for, hvilken type data der er gemt i en tabel. De hjælper med at begrænse de data, der kan føjes til et felt i en tabel. Hvis der indtastes data, der overtræder begrænsningen, får du en fejlprompt fra .

1
2
3
db_name= # Opret tabel lønningsliste (employee_id int
primær nøgle IKKE NULL, navn VARCHAR(30),
lønningsrate heltal, løn reel);

brug af Postgres, hvor ikke null

i Postgres, vil ikke NULL-begrænsningen aldrig acceptere nogen null-værdier. Der er ikke noget specifikt navn for null data– det svarer ikke til en nulværdi eller endda en tom streng. I teoretiske databaseudtryk repræsenterer den ukendte oplysninger.

valg af hvor er IKKE null i postgraduate

lad os se på et eksempel, hvor vi kan anvende begrebet NOT NULL i en SELECT erklæring:

1
db_name= # vælg * fra lønningslisten, hvor employee_id ikke er NULL;

denne forespørgsel returnerer alle poster, hvor værdien employee_id ikke er null. Da employee_id har en ikke null-begrænsning, vil resultaterne se ud som følgende:

1
2
3
4
5
6
7
8
9
employee_id / navn / løn_rate / løn
————-+——–+———–+——–
1 | hector | 400 | 10000
2 | justine| 400 | 10000
3 | sofia | 450 | 15000
4 | ivy | 400 | 10000
5 | henry | 500 / 25000
6 / myler / 500 / 25000
(6 rækker)

hvis vi skifter vores SELECT erklæring for at bruge NULL tilstand, ville vores resultater se sådan ud:

1
2
3
4
db_name= # vælg * fra løn, hvor løn_rate er NULL;
employee_id | name | løn_rate / løn
————-+——+———–+——–
(0 rækker)

som vi nævnte tidligere, har feltet employee_id en ikke NULL-begrænsning, så ingen poster matcher betingelsen NULL, der er angivet i denne forespørgsel.

brug af opdateringen, hvor ikke null

i postgraduate kan vi også bruge tilstanden IKKE NULL i en UPDATE erklæring.

her er et eksempel:

1
2
db_name= # UPDATE payroll SET name = ‘Justine’ hvor
employee_id er ikke NULL;

i eksemplet ovenfor ser vi, at tilstanden postgreskl NOT NULL opdaterer tabellen med navnet payroll. Det vil ændre kolonnen name for at have en værdi af ‘Justine’ for alle poster, hvor employee_id ikke indeholder en null-værdi.

brug af Slet hvor ikke null

vi kan også anvende en NOT NULL betingelse til en DELETE erklæring ved hjælp af følgende syntaks:

1
db_name= # Slet fra løn, hvor navnet ikke er NULL;

denne syntaks vil DELETE alle poster fra løntabellen, hvor navnet ikke har en null-værdi.

lad os kontrollere, om posterne blev slettet ved at udføre en SELECT * erklæring:

1
vælg * fra Tabelnavn;

konklusion

når du vil håndhæve visse regler om de data, der er gemt i dine postgraduate tabeller, er begrænsninger den bedste måde at få arbejdet gjort på. I denne artikel fokuserede vi vores opmærksomhed på postgraduate ikke NULL-begrænsningen og kiggede på flere eksempler på, hvordan du bruger NOT NULL – tilstanden i en række databasehandlinger. Med disse eksempler til at guide dig, vil du være i stand til at gøre brug af NOT NULL begrænsning i din egen postgraduate database.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.