Het commando CREATE TABLE van Post­greSQL wordt gebruikt om nieuwe tabellen in een database aan te maken. Wanneer u dit commando gebruikt, kunt u ook ver­schil­len­de spe­ci­fi­ca­ties voor de tabel en af­zon­der­lij­ke kolommen de­fi­ni­ë­ren.

Wat is Post­greSQL CREATE TABLE?

Het commando CREATE TABLE in Post­greSQL wordt gebruikt om een nieuwe tabel aan te maken in een bestaande database. Bij het aanmaken van een nieuwe tabel moet u een unieke naam opgeven en elke kolom een naam en een ge­ge­vens­ty­pe toewijzen. Bij het aanmaken van tabellen in het populaire da­ta­ba­se­be­heer­sys­teem kunt u 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 het commando ALTER TABLE gebruiken om kolommen naar behoefte 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

Het commando CREATE TABLE geeft 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 na de tabelnaam wordt een set haakjes geplaatst, waar­bin­nen u 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 u 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 geen 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 invoegen of bijwerken van gegevens
  • FOREIGN KEY: Stelt een relatie vast 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

Post­greSQL CREATE TABLE voorbeeld

Om te il­lu­stre­ren hoe CREATE TABLE in Post­greSQL werkt, gaan we een tabel maken met de naam customer_list. Deze tabel heeft vier kolommen: id, name, country en address. De kolom id is ingesteld als PRIMARY KEY. De beperking NOT NULL wordt gebruikt om ervoor te zorgen dat de kolommen id en name waarden bevatten. Hier 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

Dit commando maakt een lege tabel aan met de tabelnaam en kolommen die in de code zijn opgegeven. U kunt nu de tabel met gegevens vullen. Wanneer de tabel met gegevens is gevuld, kan deze er ongeveer zo uitzien:

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

Hoe u kunt con­tro­le­ren of er tabellen zijn met behulp van \d

Het commando \d geeft een overzicht van alle tabellen in een database en kan worden gebruikt om te con­tro­le­ren of een tabel succesvol is aan­ge­maakt. Dat gaat 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 te krijgen. We gebruiken de tabel van hierboven om je te laten zien hoe de code daarvoor eruitziet:

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