Postgresql Ikke Null Begrensning

Innledning

når du oppretter en tabell I PostgreSQL, har du muligheten til å legge til visse begrensninger på kolonnene. I SQL er begrensninger spesielle regler som begrenser typen data som kan lagres i en gitt kolonne. En type begrensning er ikke NULL-begrensningen, som dikterer at en gitt kolonne ikke kan inneholde nullverdier. I denne artikkelen vil vi ta en nærmere titt På postgresql IKKE NULL begrensning og se gjennom noen eksempler på hvordan begrensningen brukes.

Forutsetninger

før du prøver å følge med denne opplæringen, må du sørge for at disse viktige forutsetningene er på plass:

  • Pass På At PostgreSQL er installert og fungerer på enheten din. Kommandoen psql -V viser Versjonen Av PostgreSQL som er installert på maskinen din.

  • du trenger en grunnleggende kunnskap om databasebehandlingssystemer og SQL-kommandoer I PostgreSQL.

Åpne psql Kommandolinjegrensesnitt

for å kunne utføre kommandoer må vi åpne kommandolinjegrensesnittet psql.

det kreves to trinn for å koble til psql kommandolinjekonsoll.

den første kommandoen vil gi deg påloggingsrettigheter som postgres superbruker etter at du har skrevet inn passordet:

1
sudo su-postgres

etter at vi har skrevet inn superbrukerpassordet, kan vi starte den interaktive terminalen For Postgres:

1
psql

Når du er koblet til psql-grensesnittet, kan du begynne å utføre spørringer og kommandoer I PostgreSQL.

PostgreSQL ikke null

som standard kan en datapost inneholde nullverdier I PostgreSQL. Bruk av ikke NULL-begrensningen håndhever at feltet må inneholde en annen verdi enn en nullverdi. Med denne betingelsen på plass kan du ikke sette inn eller oppdatere en post uten å legge til en verdi for det aktuelle feltet.

Opprett En Database I PostgreSQL

La oss lage en database som vi kan teste ut ikke NULL-begrensningen. Pass på at det nye databasenavnet du velger er unikt; Ellers Vil PostgreSQL returnere en feil.

for å opprette en ny database bruker vi følgende syntaks:

1
postgres= # OPPRETT DATABASE db_name;

vi vil bruke navnet db_name for vår database, men du kan levere noen navn du ønsker.

for å koble til databasen, skriv inn \c etterfulgt av databasenavnet ditt. Du vil bli varslet om at du nå er koblet til databasen «db_name» som bruker «postgres».

Opprett En PostgreSQL-Tabell

for å lage en tabell bruker vi denne grunnleggende syntaksen:

1
2
OPPRETT TABELL TABLE_NAME (KOLONNENAVN +
DATATYPE + COLUMN_CONSTRAINT);

Legg Merke til at datatypen er plassert etter kolonnenavnet, og det er etterfulgt av begrensningen, hvis en brukes.

Bruk Datatypen Til Å Legge Til Ikke NULL-Begrensningen

Begrensninger brukes til å definere reglene for hvilken datatype som er lagret i en tabell. De bidrar til å begrense dataene som kan legges til i et felt i en tabell. Hvis noen data er oppgitt som bryter med begrensningen, får Du En feilmelding Fra PostgreSQL.

1
2
3
DB_NAME=# OPPRETT tabell lønn(employee_id INT
PRIMÆRNØKKEL IKKE NULL, navn VARCHAR(30),
wage_rate HELTALL, lønn EKTE);

Ved Å Bruke PostgreSQL der ikke null

I Postgres, vil ikke NULL-begrensningen aldri godta nullverdier. Det er ikke noe spesifikt navn for null data– det tilsvarer ikke en nullverdi eller en tom streng. I teoretiske databasebetingelser representerer den ukjent informasjon.

Velge ved hjelp av hvor er ikke null I PostgreSQL

La oss se på et eksempel der vi kan bruke begrepet NOT NULL i en SELECT – setning:

1
db_name= # VELG * fra lønn hvor employee_id IKKE ER NULL;

denne spørringen returnerer alle poster der verdien employee_id ikke er null. Siden employee_id har en ikke null begrensning, vil resultatene se ut som følgende:

1
2
3
4
5
6
7
8
9
ansatte_id / navn | lønn / lønn
————-+——–+———–+——–
1 | hector | 400 | 10000
2 | justine| 400 | 10000
3/sofia | 450 | 15000
4 | eføy | 400 / 10000
5 | henry | 500 / 25000
6 | myler / 500 / 25000
(6 RADER)

hvis vi bytter vår SELECT – setning for å bruke NULL – tilstanden, vil resultatene våre se slik ut:

1
2
3
4
db_name= # VELG * fra lønn hvor wage_rate ER NULL;
employee_id / name / wage_rate / salary
————-+——+———–+——–
(0 RADER)

som vi nevnte tidligere, har feltet employee_id en ikke NULL begrensning, så ingen poster samsvarer med betingelsen NULL angitt i denne spørringen.

ved hjelp av oppdateringen der ikke null

I PostgreSQL kan vi også bruke IKKE NULL-tilstanden i en UPDATE – setning.

her er et eksempel:

1
2
DB_NAME=# UPDATE payroll SET name = ‘Justine’ der
employee_id IKKE ER NULL;

i eksemplet ovenfor ser Vi At postgresql NOT NULL tilstanden vil oppdatere tabellen kalt lønn. Det vil endre kolonnen name for Å ha en verdi Av ‘Justine’ for alle poster der employee_id ikke inneholder en nullverdi.

ved hjelp av delete where not null

Kan vi også bruke en NOT NULL – betingelse til en DELETE – setning ved hjelp av følgende syntaks:

1
DB_NAME=# SLETT fra lønn hvor navnet IKKE ER NULL;

denne syntaksen vil DELETE alle postene fra lønnstabellen der navnet ikke har en nullverdi.

la oss sjekke om postene ble slettet ved å utføre en SELECT * – setning:

1
VELG * FRA TABLE_NAME;

Konklusjon

når du vil håndheve visse regler om dataene som er lagret i PostgreSQL-tabellene, er begrensninger den beste måten å få jobben gjort på. I denne artikkelen fokuserte Vi vår oppmerksomhet På postgresql NOT NULL-begrensningen og så på flere eksempler på hvordan du bruker NOT NULL – tilstanden i en rekke databaseoperasjoner. Med disse eksemplene for å veilede deg, kan du bruke NOT NULL begrensningen i din Egen PostgreSQL-database.

Legg igjen en kommentar

Din e-postadresse vil ikke bli publisert.