SQL i praksis: Sådan henter, indsætter og opdaterer du data effektivt

SQL i praksis: Sådan henter, indsætter og opdaterer du data effektivt

SQL – Structured Query Language – er rygraden i de fleste databaser, uanset om du arbejder med MySQL, PostgreSQL, SQL Server eller SQLite. Det er sproget, der gør det muligt at hente, indsætte, opdatere og slette data på en struktureret og effektiv måde. Men hvordan bruger man SQL i praksis, så forespørgslerne både er korrekte og hurtige? Her får du en praktisk introduktion til de vigtigste kommandoer og principper.
Forstå grundstrukturen i SQL
SQL er et deklarativt sprog – du beskriver, hvad du vil have, ikke hvordan databasen skal finde det. Det gør sproget både kraftfuldt og let at læse. De mest anvendte kommandoer kan opdeles i fire hovedkategorier:
- SELECT – henter data fra tabeller
- INSERT – indsætter nye rækker
- UPDATE – ændrer eksisterende data
- DELETE – fjerner data
Derudover findes der kommandoer til at oprette og ændre tabeller (DDL – Data Definition Language), men i denne artikel fokuserer vi på selve arbejdet med data.
Hent data med SELECT
SELECT er den mest brugte SQL-kommando. Den bruges til at hente data fra en eller flere tabeller. En simpel forespørgsel kan se sådan ud:
SELECT navn, alder FROM personer;
Her hentes kolonnerne navn og alder fra tabellen personer. Vil du kun have bestemte rækker, kan du tilføje en WHERE-betingelse:
SELECT navn, alder FROM personer WHERE alder > 30;
Du kan også sortere resultaterne med ORDER BY og begrænse antallet af rækker med LIMIT. For eksempel:
SELECT navn, alder FROM personer WHERE alder > 30 ORDER BY alder DESC LIMIT 5;
Det giver de fem ældste personer over 30 år.
Indsæt data med INSERT
Når du skal tilføje nye rækker til en tabel, bruger du INSERT INTO. Eksempel:
INSERT INTO personer (navn, alder, by) VALUES ('Anna', 28, 'Aarhus');
Her angiver du både kolonnenavne og de værdier, der skal indsættes. Hvis du indsætter data i alle kolonner i den rækkefølge, de er defineret i tabellen, kan du udelade kolonnenavnene – men det er god praksis at skrive dem, så koden er mere robust over for ændringer i tabellen.
Opdater data med UPDATE
Når du skal ændre eksisterende data, bruger du UPDATE. Eksempel:
UPDATE personer SET by = 'København' WHERE navn = 'Anna';
Her ændres værdien i kolonnen by for den række, hvor navn er Anna. Det er vigtigt altid at bruge en WHERE-betingelse, så du ikke opdaterer alle rækker ved en fejl. Vil du ændre flere kolonner på én gang, kan du adskille dem med kommaer:
UPDATE personer SET alder = 29, by = 'Odense' WHERE navn = 'Anna';
Slet data med DELETE
For at fjerne data bruges DELETE FROM. Eksempel:
DELETE FROM personer WHERE alder < 18;
Denne kommando sletter alle personer under 18 år. Ligesom med UPDATE bør du altid bruge en WHERE-betingelse – ellers slettes hele tabellen.
Effektivitet og gode vaner
Når databasen vokser, bliver effektivitet afgørende. Her er nogle grundlæggende råd:
- Brug indekser på kolonner, du ofte søger i. Det gør forespørgsler hurtigere.
- Vælg kun de kolonner, du har brug for.
SELECT *kan være praktisk, men det belaster databasen unødigt. - Brug JOINs med omtanke. Sammenkædning af store tabeller kan være tungt – sørg for, at de relevante kolonner er indekserede.
- Test dine forespørgsler. Brug værktøjer som EXPLAIN (i fx MySQL og PostgreSQL) til at se, hvordan databasen udfører din forespørgsel.
- Hold transaktioner korte. Lange transaktioner kan låse tabeller og skabe flaskehalse.
Brug transaktioner til sikkerhed
Når du arbejder med flere ændringer, der skal udføres samlet, kan du bruge transaktioner. En transaktion sikrer, at enten alle ændringer gennemføres – eller ingen af dem. Eksempel:
BEGIN;
UPDATE konto SET saldo = saldo - 500 WHERE id = 1;
UPDATE konto SET saldo = saldo + 500 WHERE id = 2;
COMMIT;
Hvis noget går galt undervejs, kan du i stedet bruge ROLLBACK for at fortryde ændringerne. Det er især vigtigt i systemer, hvor dataintegritet er kritisk – som i økonomi eller lagerstyring.
Sammenfatning: SQL som værktøj i hverdagen
SQL er ikke kun et sprog for databaseadministratorer – det er et værktøj, som enhver udvikler, dataanalytiker eller systemarkitekt bør mestre. Ved at forstå de grundlæggende kommandoer og tænke over effektivitet og sikkerhed kan du arbejde langt mere målrettet med data.
Uanset om du bygger en webapplikation, analyserer kundedata eller automatiserer rapporter, er SQL nøglen til at få mest muligt ud af dine databaser – hurtigt, sikkert og effektivt.













