Med kommandot ALTER TABLE i PostgreSQL kan du lägga till eller ändra kolumner i databastabeller.

Vad är PostgreSQL ALTER TABLE?

Kommandot ALTER TABLE i PostgreSQL kan användas för att ändra tabeller i en databas. Med detta kommando kan du lägga till, ta bort eller justera kolumner i en tabell efter behov. Det kan också användas för att implementera eller upphäva begränsningar för en tabell i databashanteringssystemet. För att använda detta kommando måste du kombinera det med en specifik åtgärd.

Vad är syntaxen för ALTER TABLE?

För att få en bättre förståelse för hur man använder ALTER TABLE, låt oss först titta på dess syntax:

ALTER TABLE table_name action;
postgresql

Efter kommandot måste du ange namnet på tabellen du vill ändra och välja motsvarande åtgärd för de ändringar du vill göra.

Tips

För att skapa en ny tabell kan du använda kommandot CREATE TABLE i PostgreSQL.

PostgreSQL ALTER TABLE exempel

Nedan visar vi hur ALTER TABLE fungerar med ett enkelt exempel. Vi använder en tabell med namnet customers som har tre kolumner och tre rader:

id namn stad
1 Lee Northampton
2 Johnson Edinburgh
3 Smith Brighton

Vi kan justera denna tabell på olika sätt med hjälp av ALTER TABLE.

Lägga till en kolumn med PostgreSQL ADD COLUMN

För att lägga till en ny kolumn använder du ALTER TABLE i kombination med PostgreSQL:s ADD COLUMN. Denna åtgärd kräver två parametrar: namnet på den nya kolumnen och dess datatyp. Syntaxen är följande:

ALTER TABLE table_name ADD COLUMN column_name data_type;
postgresql

Här är ett exempel på hur du kan lägga till en adresskolumn i tabellen customers:

ALTER TABLE customers ADD COLUMN address VARCHAR(255);
postgresql

Så här ser tabellen ut nu:

id namn stad adress
1 Lee Northampton NULL
2 Johnson Edinburgh NULL
3 Smith Brighton NULL

Ta bort en kolumn med DROP COLUMN

För att ta bort en kolumn från en tabell använder du ALTER TABLE med åtgärden DROP COLUMN. Här behöver du bara lägga till kolumnnamnet som parameter:

ALTER TABLE table_name DROP COLUMN column_name;
postgresql

För att ta bort kolumn city använder du följande kod:

ALTER TABLE customers DROP COLUMN city;
postgresql

Detta reducerar tabellen till tre kolumner:

id namn adress
1 Lee NULL
2 Johnson NULL
3 Smith NULL

Byta namn på en kolumn med RENAME COLUMN

Du kan också byta namn på en befintlig kolumn. Detta kan vara ett bra alternativ till att ta bort kolumner och sedan lägga till dem igen. Syntaxen för RENAME COLUMN är:

ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
postgresql

Du kan till exempel ändra kolumn name till customer_name:

ALTER TABLE customers RENAME COLUMN name TO customer_name;
postgresql

Så här ser tabellen ut nu:

id kundnamn adress
1 Lee NULL
2 Johnson NULL
3 Smith NULL

Ytterligare PostgreSQL-åtgärder för ALTER TABLE

Här är några andra viktiga åtgärder som du kan använda med ALTER TABLE:

Ändra datatypen för en kolumn:

ALTER TABLE table_name ALTER COLUMN column_name TYPE data_type;
postgresql

Se till att varje post i en kolumn har ett värde:

ALTER TABLE table_name ALTER COLUMN column_name SET NOT NULL;
postgresql

Fastställande av begränsningar såsom UNIQUE eller PRIMARY KEY genom att använda ALTER TABLE med ADD CONSTRAINT:

ALTER TABLE table_name ADD CONSTRAINT constraint_name constraint_definition;
postgresql
Gå till huvudmeny