Hoe kolommen toevoegen of verwijderen in PostgreSQL met ALTER TABLE
Met het ALTER TABLE-commando in PostgreSQL kun je kolommen aan databasetabellen toevoegen of wijzigen.
Wat is PostgreSQL ALTER TABLE?
Met het commando ALTER TABLE in PostgreSQL kun je tabellen in een database wijzigen. Met dit commando kun je naar behoefte kolommen aan een tabel toevoegen, verwijderen of aanpassen. Het kan ook worden gebruikt om beperkingen op een tabel in het databasebeheersysteem toe te passen of op te heffen. Om dit commando te gebruiken, moet je het combineren met een specifieke 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;postgresqlNa het commando moet u de naam opgeven van de tabel die u wilt wijzigen en de juiste actie selecteren voor de wijzigingen die u wilt aanbrengen.
Om een nieuwe tabel aan te maken, kunt u in PostgreSQL de opdracht CREATE TABLE gebruiken.
Voorbeelden van PostgreSQL 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 | Northampton |
| 2 | Johnson | Edinburgh |
| 3 | Smith | Brighton |
We kunnen deze tabel op verschillende manieren aanpassen met behulp van ALTER TABLE.
Een kolom toevoegen met PostgreSQL ADD COLUMN
Om een nieuwe kolom toe te voegen, gebruikt u ALTER TABLE in combinatie met de actie ADD COLUMN van PostgreSQL. Deze actie vereist twee parameters: de naam van de nieuwe kolom en het gegevenstype ervan. De syntaxis is als volgt:
ALTER TABLE table_name ADD COLUMN column_name data_type;postgresqlHier volgt bijvoorbeeld hoe je een adreskolom aan de tabel customers kunt toevoegen:
ALTER TABLE customers ADD COLUMN address VARCHAR(255);postgresqlZo ziet de tabel er nu uit:
| id | naam | plaats | adres |
|---|---|---|---|
| 1 | Lee | Northampton | NULL |
| 2 | Johnson | Edinburgh | NULL |
| 3 | Smith | Brighton | NULL |
Een kolom verwijderen met DROP COLUMN
Om een kolom uit een tabel te verwijderen, gebruik je ALTER TABLE in combinatie met de DROP COLUMN. Hier hoef je alleen de kolomnaam als parameter op te geven:
ALTER TABLE table_name DROP COLUMN column_name;postgresqlGebruik de volgende code om kolom city te verwijderen:
ALTER TABLE customers DROP COLUMN city;postgresqlHierdoor wordt de tabel teruggebracht 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 alternatief zijn voor het verwijderen en vervolgens opnieuw toevoegen van kolommen. De syntaxis voor RENAME COLUMN is:
ALTER TABLE table_name RENAME COLUMN old_column_name TO new_column_name;postgresqlJe kunt bijvoorbeeld de name kolom wijzigen in customer_name:
ALTER TABLE customers RENAME COLUMN name TO customer_name;postgresqlZo ziet de tabel er nu uit:
| id | klantnaam | adres |
|---|---|---|
| 1 | Lee | NULL |
| 2 | Johnson | NULL |
| 3 | Smith | NULL |
Extra PostgreSQL-acties voor ALTER TABLE
Hier volgen nog enkele andere belangrijke functies die je met ALTER TABLE kunt gebruiken:
Het gegevenstype van een kolom wijzigen:
ALTER TABLE table_name ALTER COLUMN column_name TYPE data_type;postgresqlErvoor zorgen dat elke rij in een kolom een waarde bevat:
ALTER TABLE table_name ALTER COLUMN column_name SET NOT NULL;postgresqlHet vaststellen van beperkingen zoals UNIQUE of PRIMARY KEY door gebruik te maken van ALTER TABLE in combinatie met ADD CONSTRAINT:
ALTER TABLE table_name ADD CONSTRAINT constraint_name constraint_definition;postgresql