Sådan oprettes tabeller med PostgreSQL’s CREATE TABLE
Kommandoen POSTGRESQLCREATE TABLE bruges til at oprette nye tabeller i en database. Når du bruger denne kommando, kan du også angive forskellige indstillinger for tabellen og de enkelte kolonner.
Hvad er PostgreSQL CREATE TABLE?
Kommandoen CREATE TABLE i PostgreSQL bruges til at oprette en ny tabel i en eksisterende database. Når du opretter en ny tabel, skal du angive et unikt navn til den samt tildele hver kolonne et navn og en datatype. Når du opretter tabeller i dette populære databasestyringssystem, kan du også definere begrænsninger for enten alle kolonnerne i tabellen eller for enkelte kolonner.
Hvis du senere ønsker at ændre dine tabelindstillinger, kan du bruge kommandoen ALTER TABLE til at tilpasse kolonnerne efter behov.
Hvad er syntaksen for CREATE TABLE?
Den grundlæggende syntaks for PostgreSQL CREATE TABLE er som følger:
CREATE TABLE table_name(
column1 data_type PRIMARY KEY,
column2 data_type,
column3 data_type,
…
);postgresqlKommandoen CREATE TABLE beder PostgreSQL om at oprette en ny tabel. Selve kommandoen efterfølges af tabelnavnet, som skal være unikt. Umiddelbart efter tabelnavnet skrives et sæt parenteser, hvor man skal angive de forskellige kolonnenavne og deres tilhørende datatyper.
Hvis du vil tilføje begrænsninger, ændres syntaksen:
CREATE TABLE table_name(
column1 data_type PRIMARY KEY constraint,
column2 data_type constraint,
column3 data_type constraint,
…
);postgresqlUd over PRIMARY KEY understøtter PostgreSQL også følgende begrænsninger:
NOT NULL: Sikrer, at en kolonne ikke kan indeholdeNULLværdierUNIQUE: Sikrer, at alle værdier i en kolonne eller en kombination af kolonner er unikkeCHECK: Definerer betingelser, der skal opfyldes ved indsættelse eller opdatering af dataFOREIGN KEY: Opretter en relation til en kolonne i en anden tabelDEFAULT: Angiver en standardværdi for en kolonne, hvis der ikke angives en eksplicit værdi
Eksempel på PostgreSQL CREATE TABLE
For at illustrere, hvordan CREATE TABLE fungerer i PostgreSQL, vil vi oprette en tabel ved navn customer_list. Denne tabel vil have fire kolonner: id, name, country og address. Kolonnen id er indstillet som PRIMARY KEY. Betingelsen NOT NULL bruges til at sikre, at kolonnerne id og name indeholder værdier. Her er koden:
CREATE TABLE customer_list(
id INT PRIMARY KEY NOT NULL,
name VARCHAR(50) NOT NULL,
country VARCHAR(50),
address VARCHAR(255)
);postgresqlDenne kommando opretter en tom tabel med det tabelnavn og de kolonner, der er angivet i koden. Du kan nu indtaste data i tabellen. Når tabellen er udfyldt med data, kan den se sådan ud:
| id | navn | land | adresse |
|---|---|---|---|
| 1 | Emily Eksempel | Storbritannien | 123 High St, Anytown, W1 4GH |
| 2 | … | … | … |
| 3 | … | … | … |
Sådan tjekker du for borde ved hjælp af \d
Kommandoen \d viser alle tabellerne i en database og kan bruges til at kontrollere, om en tabel er blevet oprettet korrekt. Sådan gør du:
testdb-# \dpostgresqlDu kan også bruge denne kommando til at få en detaljeret beskrivelse af en tabel. Vi bruger tabellen ovenfor til at vise dig, hvordan koden til dette ser ud:
testdb-# \d customer_listpostgresql