Met het ALTER TABLE-commando in Post­greSQL kun je kolommen aan da­ta­ba­se­ta­bel­len toevoegen of wijzigen.

Wat is Post­greSQL ALTER TABLE?

Met het commando ALTER TABLE in Post­greSQL kun je tabellen in een database wijzigen. Met dit commando kun je naar behoefte kolommen aan een tabel toevoegen, ver­wij­de­ren of aanpassen. Het kan ook worden gebruikt om be­per­kin­gen op een tabel in het da­ta­ba­se­be­heer­sys­teem toe te passen of op te heffen. Om dit commando te gebruiken, moet je het com­bi­ne­ren met een spe­ci­fie­ke actie.

Wat is de syntaxis voor ALTER TABLE?

Om een beter beeld te krijgen van hoe je ALTER TABLE gebruikt, kijken we eerst even naar de syntaxis ervan:

ALTER TABLE table_name action;
post­gresql

Na het commando moet u de naam opgeven van de tabel die u wilt wijzigen en de juiste actie se­lec­te­ren voor de wij­zi­gin­gen die u wilt aan­bren­gen.

Tip

Om een nieuwe tabel aan te maken, kunt u in Post­greSQL de opdracht CREATE TABLE gebruiken.

Voor­beel­den van Post­greSQL ALTER TABLE

Hieronder laten we aan de hand van een eenvoudig voorbeeld zien hoe ALTER TABLE werkt. We gebruiken een tabel met de naam customers die drie kolommen en drie rijen bevat:

id naam stad
1 Lee Nort­hamp­ton
2 Johnson Edinburgh
3 Smith Brighton

We kunnen deze tabel op ver­schil­len­de manieren aanpassen met behulp van ALTER TABLE.

Een kolom toevoegen met Post­greSQL ADD COLUMN

Om een nieuwe kolom toe te voegen, gebruikt u ALTER TABLE in com­bi­na­tie met de actie ADD COLUMN van Post­greSQL. Deze actie vereist twee pa­ra­me­ters: de naam van de nieuwe kolom en het ge­ge­vens­ty­pe ervan. De syntaxis is als volgt:

ALTER TABLE table_name ADD COLUMN column_name data_type;
post­gresql

Hier volgt bij­voor­beeld hoe je een adres­ko­lom aan de tabel customers kunt toevoegen:

ALTER TABLE customers ADD COLUMN address VARCHAR(255);
post­gresql

Zo ziet de tabel er nu uit:

id naam plaats adres
1 Lee Nort­hamp­ton NULL
2 Johnson Edinburgh NULL
3 Smith Brighton NULL

Een kolom ver­wij­de­ren met DROP COLUMN

Om een kolom uit een tabel te ver­wij­de­ren, gebruik je ALTER TABLE in com­bi­na­tie met de DROP COLUMN. Hier hoef je alleen de kolomnaam als parameter op te geven:

ALTER TABLE table_name DROP COLUMN column_name;
post­gresql

Gebruik de volgende code om kolom city te ver­wij­de­ren:

ALTER TABLE customers DROP COLUMN city;
post­gresql

Hierdoor wordt de tabel te­rug­ge­bracht tot drie kolommen:

id naam adres
1 Lee NULL
2 Johnson NULL
3 Smith NULL

Een kolom hernoemen met RENAME COLUMN

Je kunt ook de naam van een bestaande kolom wijzigen. Dit kan een goed al­ter­na­tief zijn voor het ver­wij­de­ren en ver­vol­gens opnieuw toevoegen van kolommen. De syntaxis voor RENAME COLUMN is:

ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;
post­gresql

Je kunt bij­voor­beeld de name kolom wijzigen in customer_name:

ALTER TABLE customers RENAME COLUMN name TO customer_name;
post­gresql

Zo ziet de tabel er nu uit:

id klantnaam adres
1 Lee NULL
2 Johnson NULL
3 Smith NULL

Extra Post­greSQL-acties voor ALTER TABLE

Hier volgen nog enkele andere be­lang­rij­ke functies die je met ALTER TABLE kunt gebruiken:

Het ge­ge­vens­ty­pe van een kolom wijzigen:

ALTER TABLE table_name ALTER COLUMN column_name TYPE data_type;
post­gresql

Ervoor zorgen dat elke rij in een kolom een waarde bevat:

ALTER TABLE table_name ALTER COLUMN column_name SET NOT NULL;
post­gresql

Het vast­stel­len van be­per­kin­gen zoals UNIQUE of PRIMARY KEY door gebruik te maken van ALTER TABLE in com­bi­na­tie met ADD CONSTRAINT:

ALTER TABLE table_name ADD CONSTRAINT constraint_name constraint_definition;
post­gresql
Ga naar hoofdmenu