logo

PostgreSQL ADD-kolonner

I denne delen skal vi forstå hvordan PostgreSQL ADD COLUMN-kommandoen brukes til å legge til en eller flere kolonner til den gjeldende databasetabellen.

PostgreSQL ADD COLUMN kommando

Vi vil bruke endre tabell legg til kolonne, kommando for å legge til den nye kolonnen i en eksisterende tabell.

Syntaks

format streng java

Syntaksen til Endre legg til kolonne-kommando er gitt nedenfor:

 ALTER TABLE table_name ADD COLUMN new_column_name data_type; 

I syntaksen ovenfor har vi følgende parametere:

Parameter Beskrivelse
Endre bord Det er en klausul som brukes til å endre definisjonen av en tabell.
Tabellnavn Den brukes til å beskrive tabellnavnet der vi må legge til en ny kolonne etter ALTER TABLE-leddet.
New_cloumn _name Den brukes til å spesifisere kolonnenavnet med dets attributt som standardverdi, datatype og så videre, etter ADD COLUMN-betingelsen.

Merk: Når vi legger til en ny kolonne i tabellen, forbedrer PostgreSQL den på slutten av tabellen fordi PostgreSQL ikke har noe annet valg for å definere den nye kolonnens plass i tabellen.

Legg til flere kolonner ved å bruke alter table-kommandoen

Syntaks å legge til flere kolonner ved å bruke kommandoen alter table:

 ALTER TABLE table_name ADD COLUMN new_column_name_1 data_type constraint, ADD COLUMN new_column_name_2 data_type constraint, ::: ::: ADD COLUMN new_column_name_N data_type constraint; 

Eksempler på PostgreSQL ADD COLUMN

For å få en bedre forståelse av å legge til kolonnene, vil vi følge prosessen nedenfor:

Først vil vi lage en ny tabell kalt som Personer med to kolonner Person_id og Fornavn ved hjelp av kommandoen nedenfor:

 CREATE TABLE Persons ( Person_ID Serial primary key, Person_Name varchar not Null ); 

Produksjon

Etter å ha utført spørringen ovenfor, vil vi få meldingen nedenfor vindu , som sier at Personer tabellen er opprettet:

PostgreSQL ADD-kolonner

Etter det vil vi legge til Adresse kolonne til Personer tabell med kommandoen nedenfor:

 ALTER TABLE Persons ADD COLUMN Address VARCHAR; 

Produksjon

Etter å ha utført spørringen ovenfor, vil vi få meldingsvinduet nedenfor:

PostgreSQL ADD-kolonner

Og kommandoen nedenfor vil hjelpe oss å legge til By og telefon_nr kolonner til Personer bord:

 ALTER TABLE Persons ADD COLUMN City VARCHAR, ADD COLUMN Phone_no VARCHAR; 

Produksjon

Etter å ha utført spørringen ovenfor, vil vi få meldingsvinduet nedenfor:

PostgreSQL ADD-kolonner

Hvis vi ønsker å se Personer tabellstruktur i psql , vil vi bruke kommandoen nedenfor:

 javatpoint=# d Persons 

Utgangen av Personer tabellstruktur

PostgreSQL ADD-kolonner

Som vi kan se i bildet ovenfor, har vi adresse, by og telefonnummer kolonner lagt til på slutten av kolonnelisten i tabellen Personer.

Legge til en kolonne med NOT NULL-begrensningen

I dette vil vi legge til en kolonne med ikke null-begrensninger til en bestemt tabell som inneholder noen data.

For det første vil vi sette inn noen data i Personer tabell ved å bruke Insert-kommandoen:

 INSERT INTO Persons (Person_name) VALUES ('John'), ('Emily'), ('Mike'); 

Produksjon

Vi kan se at de tre radene er satt inn i Personer tabellen i meldingsvinduet nedenfor.

PostgreSQL ADD-kolonner

La oss nå anta at vi ønsket å legge til E-post kolonne til Personer tabell, og for dette bruker vi følgende kommando:

 ALTER TABLE Persons ADD COLUMN Email VARCHAR NOT NULL; 

Produksjon

Når vi utfører kommandoen ovenfor, vil vi få en feilmelding som sier det
kolonne 'e-post' inneholder nullverdier

PostgreSQL ADD-kolonner

Feilen ovenfor har oppstått fordi E-post kolonnen inneholder IKKE NULL begrensning.

slå sammen sorter java

I PostgreSQL tar den nye kolonnen NULL verdi når du legger til kolonnene, noe som også forstyrrer IKKE NULL begrensning.

For å løse feilen ovenfor, må vi følge trinnene nedenfor:

Trinn 1

Først må vi legge til kolonnen uten IKKE NULL begrensning, og for dette vil vi bruke følgende kommando:

 ALTER TABLE Persons ADD COLUMN Email VARCHAR; 

Produksjon

Som vi kan se i meldingsvinduet nedenfor E-post kolonne har vært la til inn i det Personer bord:

PostgreSQL ADD-kolonner

Steg 2

Nå vil vi oppdatere verdiene for E-post-kolonnen.

 UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 1; UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 2; UPDATE Persons SET Email = '[email protected]' WHERE Person_id = 3; 

Produksjon

Som vi kan se i meldingsvinduet nedenfor E-post kolonneverdier har vært oppdatert inn i det Personer bord:

PostgreSQL ADD-kolonner

Hvis vi ønsker å sjekke at verdiene er oppdatert eller ikke i Personer tabellen, vil vi bruke Plukke ut kommando:

 Select * From Persons; 

Produksjon

Utdataene fra spørringen ovenfor er som nedenfor:

PostgreSQL ADD-kolonner

Trinn 3

Etter å ha oppdatert E-post-kolonneverdien, vil vi angi IKKE NULL begrensning for E-post kolonne inn i Personer tabell ved å bruke følgende kommando:

 ALTER TABLE Persons ALTER COLUMN Email SET NOT NULL; 

Produksjon

Etter å ha utført kommandoen ovenfor, får vi meldingsvinduet nedenfor:

PostgreSQL ADD-kolonner