# Hoe PostgreSQL-schema’s te gebruiken

Met een schema in PostgreSQL kunt u meerdere tabellen groeperen, waardoor databases beter georganiseerd en eenvoudiger te beheren zijn. U kunt een schema aanmaken met het `CREATE SCHEMA`. Als u een schema niet langer nodig hebt, kunt u het eenvoudig verwijderen met het `DROP SCHEMA`.

## Wat is een PostgreSQL-schema?

In PostgreSQL **is** een **schema een verzameling tabellen**. Het kan ook indexen, reeksen, datatypen en functies bevatten, waardoor het vergelijkbaar is met een map. In tegenstelling tot mappen kunnen schema’s echter niet genest worden. Deze manier om databaseobjecten te ordenen is vooral handig voor het beheer van grote databases met veel tabellen.

Er bestaan schema’s tussen het databaseniveau en de afzonderlijke tabellen. Hier volgt een overzicht van de volledige hiërarchische structuur van het populaire databasebeheersysteem:

1. Instance (in PostgreSQL vaak aangeduid als de server; bevat meerdere databases)
2. Database
3. Schema
4. Tabel
5. Rij

Om een nieuw schema aan te maken in PostgreSQL, kun je het `CREATE SCHEMA` gebruiken. Om een schema te verwijderen, gebruik je het `DROP SCHEMA`. Hieronder zullen we beide commando’s in detail bekijken.

## Wat is de syntaxis voor PostgreSQL-schema’s?

De syntaxis voor het aanmaken van een schema in PostgreSQL is als volgt:

```postgresql
CREATE SCHEMA name;
```

Met dit commando geef je PostgreSQL de opdracht om een schema in de database aan te maken. Na het commando zelf moet je een unieke naam aan het schema toekennen.

## Hoe wijs je een nieuwe tabel toe aan een PostgreSQL-schema?

Wanneer je nieuwe tabellen aanmaakt met het \[PostgreSQL-commando `CREATE TABLE](t3://page?uid=37089)`, kun je deze aan een schema toewijzen. De syntaxis hiervoor ziet er als volgt uit:

```postgresql
CREATE TABLE your_schema.new_table (
…
);
```

Om te laten zien hoe dit werkt, maken we eerst een schema met de naam `customers`:

```postgresql
CREATE SCHEMA customers;
```

Maak vervolgens een nieuwe tabel met de naam `customer_list_uk` aan en voeg deze toe aan het schema `customers`:

```postgresql
CREATE TABLE customers.customer_list_uk (
id INT PRIMARY KEY NOT NULL,
name VARCHAR(50) NOT NULL,
country VARCHAR(50),
address VARCHAR(255)
);
```

Hiermee wordt een lege tabel aangemaakt in het schema `customers`. Je kunt deze tabel nu vullen met behulp van het [PostgreSQL-commando `INSERT INTO`](https://www.ionos.com/nl-be/digitalguide/server/configuratie/postgresql-insert-into/).

Opmerking Als er geen schema is opgegeven, worden nieuwe tabellen automatisch toegewezen aan het standaardschema (`public`).

## Hoe verwijder je een schema met `DROP SCHEMA`

Je kunt een PostgreSQL-schema ook verwijderen als je het niet meer nodig hebt. Als het schema leeg is, kun je de volgende opdracht gebruiken:

```postgresql
DROP SCHEMA customers;
```

Gebruik `CASCADE` om een schema en alle objecten daarin te verwijderen:

```postgresql
DROP SCHEMA customers CASCADE;
```

Dit commando verwijdert het schema en alle bijbehorende gegevens definitief, dus wees voorzichtig bij het gebruik ervan.


This is a markdown version of: [https://www.ionos.com/nl-be/digitalguide/server/configuratie/postgresql-schema/](https://www.ionos.com/nl-be/digitalguide/server/configuratie/postgresql-schema/) for AI/LLM consumption.