logo

PostgreSQL ADD-kolumner

I det här avsnittet kommer vi att förstå hur PostgreSQL ADD COLUMN-kommandot används för att lägga till en eller flera kolumner till den aktuella databastabellen.

PostgreSQL ADD COLUMN kommando

Vi kommer att använda ändra tabell lägg till kolumn, kommando för att lägga till den nya kolumnen i en befintlig tabell.

Syntax

Syntaxen för Kommandot Ändra lägg till kolumn ges nedan:

java xor
 ALTER TABLE table_name ADD COLUMN new_column_name data_type; 

I ovanstående syntax har vi följande parametrar:

Parameter Beskrivning
Ändra bord Det är en klausul som används för att ändra definitionen av en tabell.
Tabellnamn Det används för att beskriva tabellnamnet där vi behöver lägga till en ny kolumn efter ALTER TABLE-satsen.
New_cloumn _name Den används för att ange kolumnnamnet med dess attribut som standardvärde, datatyp och så vidare, efter villkoret ADD COLUMN.

Obs: När vi lägger till en ny kolumn i tabellen, förbättrar PostgreSQL den i slutet av tabellen eftersom PostgreSQL inte har något annat val att definiera den nya kolumns plats i tabellen.

Lägg till flera kolumner med kommandot alter table

Syntax att lägga till flera kolumner genom att använda kommandot 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; 

Exempel på PostgreSQL ADD COLUMN

För vår bättre förståelse för att lägga till kolumner kommer vi att följa processen nedan:

Först skapar vi en ny tabell med namnet som Personer med två kolumner Person_id och First_name med hjälp av nedanstående kommando:

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

Produktion

Efter att ha utfört ovanstående fråga kommer vi att få meddelandet nedan fönster , som säger att Personer tabellen har skapats:

PostgreSQL ADD-kolumner

Efter det kommer vi att lägga till Adress kolumn till Personer tabell med kommandot nedan:s hjälp:

 ALTER TABLE Persons ADD COLUMN Address VARCHAR; 

Produktion

Efter att ha utfört ovanstående fråga kommer vi att få meddelandefönstret nedan:

PostgreSQL ADD-kolumner

Och kommandot nedan hjälper oss att lägga till Stad och telefonnummer kolumner till Personer tabell:

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

Produktion

Efter att ha utfört ovanstående fråga kommer vi att få meddelandefönstret nedan:

PostgreSQL ADD-kolumner

Om vi ​​vill se Personer tabellstruktur i psql , kommer vi att använda kommandot nedan:

 javatpoint=# d Persons 

Utgången av Personer tabellstruktur

typskriptuppsättning
PostgreSQL ADD-kolumner

Som vi kan se i bilden ovan har vi adress, stad och telefonnummer kolumner som läggs till i slutet av kolumnlistan i tabellen Personer.

Lägga till en kolumn med NOT NULL-begränsningen

I detta kommer vi att lägga till en kolumn utan noll-begränsningar till en viss tabell som innehåller vissa data.

Först kommer vi att infoga en del data i Personer tabell genom att använda kommandot Insert:

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

Produktion

Vi kan se att de tre raderna har infogats i Personer tabell i meddelandefönstret nedan.

java lägg till sträng
PostgreSQL ADD-kolumner

Låt oss nu anta att vi ville lägga till E-post kolumn till Personer tabell, och för detta använder vi följande kommando:

 ALTER TABLE Persons ADD COLUMN Email VARCHAR NOT NULL; 

Produktion

När vi kör kommandot ovan kommer vi att få ett felmeddelande som säger det
kolumnen 'e-post' innehåller null-värden

PostgreSQL ADD-kolumner

Ovanstående fel har uppstått eftersom E-post kolumnen innehåller INTE NULL begränsning.

I PostgreSQL tar den nya kolumnen NULL värde när du lägger till kolumnerna, vilket också stör INTE NULL begränsning.

För att lösa ovanstående fel måste vi följa stegen nedan:

Steg 1

Först måste vi lägga till kolumnen utan INTE NULL begränsning, och för detta kommer vi att använda följande kommando:

 ALTER TABLE Persons ADD COLUMN Email VARCHAR; 

Produktion

Som vi kan se i meddelandefönstret nedan att E-post kolumn har varit Lagt till in i Personer tabell:

PostgreSQL ADD-kolumner

Steg 2

Nu kommer vi att uppdatera värdena för kolumnen E-post.

 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; 

Produktion

Som vi kan se i meddelandefönstret nedan att E-post kolumnvärden har varit uppdaterad in i Personer tabell:

PostgreSQL ADD-kolumner

Om vi ​​vill kontrollera att värdena är uppdaterade eller inte i Personer tabell kommer vi att använda Välj kommando:

 Select * From Persons; 

Produktion

Utdata från ovanstående fråga är som nedan:

PostgreSQL ADD-kolumner

Steg 3

Efter att ha uppdaterat värdet för E-postkolumnen kommer vi att ställa in INTE NULL begränsning för E-post kolumn i Personer tabell genom att använda följande kommando:

k klustringsalgoritm
 ALTER TABLE Persons ALTER COLUMN Email SET NOT NULL; 

Produktion

Efter att ha utfört kommandot ovan kommer vi att få meddelandefönstret nedan:

PostgreSQL ADD-kolumner