Wat is SQL
Wat is SQL?
SQL is de standaardtaal waarmee je een relationele database opvraagt en bijwerkt. De afkorting staat voor Structured Query Language, ofwel gestructureerde zoektaal. Met SQL geef je de database opdrachten zoals „geef alle klanten uit Utrecht” of „voeg deze nieuwe bestelling toe”.
SQL is geen programmeertaal in de strikte zin. Je schrijft geen lussen of variabelen, maar beschrijft wat je wilt hebben of wat je wilt wijzigen. De database bepaalt zelf de snelste manier om dat uit te voeren. Wat een database precies is, lees je in het artikel wat is een database.
Waar SQL vandaan komt
SQL werd begin jaren zeventig bij IBM ontwikkeld als onderdeel van onderzoek naar relationele databases. Later werd het vastgelegd in internationale standaarden. Daardoor lijken de basisopdrachten in grote lijnen op elkaar, of je nu werkt met MySQL, MariaDB, PostgreSQL of SQLite.
Toch zijn er verschillen. Elke databasesoftware heeft eigen uitbreidingen en kleine afwijkingen in de schrijfwijze. Een opdracht die in de ene database werkt, kan in de andere een aanpassing nodig hebben.
Hoe een website via SQL met de database praat
Een website praat zelden rechtstreeks met de database. Meestal gebeurt dat via een programmeertaal zoals PHP. Vraagt een bezoeker een artikel op, dan stelt het programma een SQL-opdracht samen, bijvoorbeeld: haal de titel en tekst op van het artikel met nummer 42. De database voert die opdracht uit en stuurt het resultaat terug. Het programma zet dat resultaat om in een webpagina.
Op dezelfde manier werkt het bij opslaan. Plaatst een bezoeker een reactie, dan voegt het programma die reactie via SQL toe aan de juiste tabel. Het is daarom belangrijk dat de software die deze opdrachten schrijft zorgvuldig is gemaakt.
Hoe zo'n opdracht eruitziet, lees je in het artikel over de basisopdrachten SELECT, INSERT, UPDATE en DELETE.
Veelgestelde vragen
Moet ik SQL leren om een website te beheren?
Voor een gewone website met een CMS zoals WordPress hoef je meestal geen SQL te schrijven, want het CMS doet dat voor je. Wil je zelf gegevens in de database bekijken of herstellen, dan is een basiskennis van SQL handig. Die is goed te leren, maar verplicht is ze niet.
Is SQL hetzelfde als MySQL?
Nee. SQL is de taal, MySQL is een databasesoftware die die taal spreekt. Hetzelfde geldt voor PostgreSQL, MariaDB en SQLite. Het lijkt op een taal en de dialecten die ervan worden gesproken: de basis is gelijk, maar elke software heeft eigen woorden en gewoonten. Lees meer over wat MySQL is.