DDL, DML och DQL: Förstå skillnaderna mellan SQL:s grundläggande byggstenar

DDL, DML och DQL: Förstå skillnaderna mellan SQL:s grundläggande byggstenar

När man arbetar med databaser stöter man snabbt på förkortningarna DDL, DML och DQL. De är alla delar av SQL – språket som används för att kommunicera med relationsdatabaser som MySQL, PostgreSQL och Microsoft SQL Server. Men vad betyder de egentligen, och hur skiljer de sig åt? Här får du en genomgång av SQL:s tre grundläggande byggstenar – och varför det är viktigt att känna till skillnaderna.
SQL – mer än bara frågor till databasen
SQL står för Structured Query Language och används för att skapa, ändra, hämta och manipulera data i databaser. Många förknippar SQL med att “ställa frågor” till databasen – alltså att hämta data – men språket omfattar mycket mer än så. Det är uppdelat i flera underkategorier, där de tre mest centrala är:
- DDL (Data Definition Language) – för att definiera och ändra databasens struktur.
- DML (Data Manipulation Language) – för att lägga till, uppdatera och ta bort data.
- DQL (Data Query Language) – för att hämta och analysera data.
Låt oss titta närmare på vad var och en av dessa delar används till i praktiken.
DDL – när du bygger själva databasen
DDL handlar om att definiera hur databasen ser ut. Här skapar du tabeller, bestämmer datatyper och sätter regler för hur data hänger ihop. Vanliga DDL-kommandon är:
- CREATE – skapar nya tabeller, databaser eller andra objekt.
- ALTER – ändrar strukturen på befintliga tabeller, till exempel genom att lägga till en ny kolumn.
- DROP – tar bort tabeller eller databaser permanent.
Man kan säga att DDL är “arkitekturen” i databasen. Det är här du lägger grunden innan du börjar fylla på med data. Eftersom DDL påverkar själva strukturen kräver det eftertanke – ändringar kan få stora konsekvenser och är ofta svåra att ångra.
DML – när du arbetar med innehållet
När strukturen väl är på plats kommer DML in i bilden. Här handlar det om att manipulera själva innehållet i databasen – alltså de rader och kolumner som innehåller data. De vanligaste DML-kommandona är:
- INSERT – lägger till nya rader med data.
- UPDATE – ändrar befintliga data.
- DELETE – tar bort data från tabeller.
DML används i den dagliga driften: när en e‑handel sparar en ny beställning, när en användare uppdaterar sin profil eller när gamla uppgifter tas bort. Det är här databasen “lever” och förändras över tid.
DQL – när du hämtar och analyserar data
DQL står för Data Query Language och används för att hämta data ur databasen. Den centrala kommandon här är SELECT, som gör det möjligt att välja exakt vilka data man vill se – till exempel alla kunder från en viss stad eller alla ordrar över ett visst belopp.
DQL är det som gör SQL till ett så kraftfullt verktyg för analytiker och utvecklare. Med SELECT kan man kombinera data från flera tabeller, filtrera, sortera och gruppera resultat – och på så sätt få insikt i vad data faktiskt berättar.
Varför uppdelningen spelar roll
Även om DDL, DML och DQL alla är delar av SQL har de olika syften och kräver olika rättigheter i databasen. En databasadministratör (DBA) arbetar ofta med DDL, medan utvecklare och analytiker främst använder DML och DQL i sitt dagliga arbete.
Att förstå skillnaden gör det lättare att arbeta säkert och effektivt. Till exempel bör vanliga användare inte ha tillgång till DDL-kommandon, eftersom de kan ändra eller ta bort hela tabeller av misstag.
En helhet som hänger ihop
Tillsammans utgör DDL, DML och DQL kärnan i SQL. De representerar tre nivåer av interaktion med databasen: struktur, innehåll och frågor. När man förstår hur de samverkar får man en stabil grund för att arbeta med data – oavsett om man är utvecklare, dataanalytiker eller bara nyfiken på hur databaser fungerar.









