Met CREATE TABLE commando van Post­greSQL kun je nieuwe tabellen in een database aanmaken. Bij het gebruik van dit commando kun je ook diverse spe­ci­fi­ca­ties voor de tabel en af­zon­der­lij­ke kolommen opgeven.

Wat is Post­greSQL CREATE TABLE?

Het CREATE TABLE -commando in Post­greSQL wordt gebruikt om een nieuwe tabel aan te maken in een bestaande database. Bij het aanmaken van een nieuwe tabel moet je een unieke naam opgeven en elke kolom een naam en een ge­ge­vens­ty­pe toewijzen. Bij het aanmaken van tabellen in dit populaire da­ta­ba­se­be­heer­sys­teem kun je ook be­per­kin­gen de­fi­ni­ë­ren voor alle kolommen in de tabel of voor af­zon­der­lij­ke kolommen.

Tip

Als u uw ta­be­l­in­stel­lin­gen later wilt wijzigen, kunt u de opdracht ALTER TABLE gebruiken om de kolommen naar wens aan te passen.

Wat is de syntaxis voor CREATE TABLE?

De ba­sis­syn­taxis voor Post­greSQL CREATE TABLE is als volgt:

CREATE TABLE table_name(
column1 data_type PRIMARY KEY,
column2 data_type,
column3 data_type,
…
);
post­gresql

Met het commando CREATE TABLE geef je Post­greSQL de opdracht om een nieuwe tabel aan te maken. Het commando zelf wordt gevolgd door de naam van de tabel, die uniek moet zijn. Direct achter de tabelnaam staat een paar haakjes, waar­bin­nen je de ver­schil­len­de ko­lom­na­men en de bij­be­ho­ren­de ge­ge­vens­ty­pen moet de­fi­ni­ë­ren.

Als je be­per­kin­gen wilt toevoegen, verandert de syntaxis:

CREATE TABLE table_name(
column1 data_type PRIMARY KEY constraint,
column2 data_type constraint,
column3 data_type constraint,
…
);
post­gresql

Naast PRIMARY KEY on­der­steunt Post­greSQL ook de volgende be­per­kin­gen:

  • NOT NULL: Zorgt ervoor dat een kolom niet meer dan NULL waarden kan bevatten
  • UNIQUE: Zorgt ervoor dat alle waarden in een kolom of een com­bi­na­tie van kolommen uniek zijn
  • CHECK: De­fi­ni­eert voor­waar­den waaraan moet worden voldaan bij het invoeren of bijwerken van gegevens
  • FOREIGN KEY: Stelt een relatie in met een kolom in een andere tabel
  • DEFAULT: Spe­ci­fi­ceert een stan­daard­waar­de voor een kolom als er geen ex­pli­cie­te waarde is opgegeven

Voorbeeld van Post­greSQL CREATE TABLE

Om te laten zien hoe CREATE TABLE in Post­greSQL werkt, gaan we een tabel aanmaken met de naam customer_list. Deze tabel krijgt vier kolommen: id, name, country en address. De id is ingesteld als de PRIMARY KEY. De NOT NULL wordt gebruikt om ervoor te zorgen dat de id en name waarden bevatten. Dit is hoe de code eruitziet:

CREATE TABLE customer_list(
id INT PRIMARY KEY NOT NULL,
name VARCHAR(50) NOT NULL,
country VARCHAR(50),
address VARCHAR(255)
);
post­gresql

Met dit commando maak je een lege tabel aan met de tabelnaam en kolommen die in de code zijn opgegeven. Je kunt de tabel nu met gegevens vullen. Als de tabel met gegevens is gevuld, ziet deze er ongeveer zo uit:

id naam land adres
1 Emily Voorbeeld Verenigd Ko­nink­rijk 123 High St, Anytown, W1 4GH
2
3

Hoe con­tro­leer je of er tabellen zijn met behulp van \d

Met het commando \d worden alle tabellen in een database weer­ge­ge­ven. Je kunt dit commando gebruiken om te con­tro­le­ren of een tabel succesvol is aan­ge­maakt. Dat doe je als volgt:

testdb-# \d
post­gresql

Je kunt dit commando ook gebruiken om een ge­de­tail­leer­de be­schrij­ving van een tabel op te vragen. We gebruiken de tabel van hierboven om te laten zien hoe de code daarvoor eruitziet:

testdb-# \d customer_list
post­gresql
Ga naar hoofdmenu