Ett schema i PostgreSQL låter dig gruppera flera tabeller tillsammans, vilket möjliggör bättre organisation och enklare hantering av databaser. Du kan skapa ett schema med kommandot CREATE SCHEMA. Om du inte längre behöver ett schema kan du enkelt ta bort det med kommandot DROP SCHEMA.

Vad är ett PostgreSQL-schema?

I PostgreSQL är ett schema en samling tabeller. Det kan också innehålla index, sekvenser, datatyper och funktioner, vilket gör det liknande en katalog. Till skillnad från kataloger kan scheman dock inte vara nästlade. Denna metod för att organisera databasobjekt är särskilt användbar för att hantera stora databaser som har många tabeller.

Scheman finns mellan databasnivån och enskilda tabeller. Här är en översikt över den fullständiga hierarkiska strukturen för det populära databashanteringssystemet:

  1. Instans (kallas ofta server i PostgreSQL, innehåller flera databaser)
  2. Databas
  3. Schema
  4. Tabell
  5. Rad

För att skapa ett nytt schema i PostgreSQL kan du använda kommandot CREATE SCHEMA. För att ta bort ett schema använder du kommandot DROP SCHEMA. Vi kommer att titta närmare på båda kommandona nedan.

Vad är syntaxen för PostgreSQL-scheman?

Syntaxen för att skapa ett schema i PostgreSQL är följande:

CREATE SCHEMA name;
postgresql

Detta kommando instruerar PostgreSQL att skapa ett schema i databasen. Efter själva kommandot måste du tilldela schemat ett unikt namn.

Hur man tilldelar en ny tabell till ett PostgreSQL-schema

När du skapar nya tabeller med kommandot CREATE TABLE i PostgreSQL kan du tilldela dem till ett schema. Syntaxen för detta ser ut så här:

CREATE TABLE your_schema.new_table (
…
);
postgresql

För att visa hur detta fungerar ska vi först skapa ett schema med namnet customers:

CREATE SCHEMA customers;
postgresql

Sedan skapar du en ny tabell som heter customer_list_uk och lägger till den i schemat customers:

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

Detta skapar en tom tabell i schemat customers. Du kan nu fylla denna tabell med hjälp av kommandot INSERT INTO i PostgreSQL.

Notis

Om inget schema anges tilldelas nya tabeller automatiskt standardschemat (public).

Hur man tar bort ett schema med DROP SCHEMA

Du kan också ta bort ett PostgreSQL-schema om du inte längre behöver det. Om schemat är tomt kan du använda följande kommando:

DROP SCHEMA customers;
postgresql

För att ta bort ett schema och alla objekt i det, använd CASCADE:

DROP SCHEMA customers CASCADE;
postgresql

Detta kommando tar bort schemat och alla dess data permanent, så var noga med att använda det med försiktighet.

Gå till huvudmeny