SQL er et spesialisert programmeringsspråk, et såkalt spørrespråk, som brukes til å å oppdatere eller hente informasjon fra relasjonsdatabaser. Dette er databaser der dataene er organisert som rader i tabeller. SQL er det dominerende programmeringsspråket for denne typen databaser.

Faktaboks

Etymologi

forkortelse for engelsk Structured Query Language

Mer spesifikt er SQL både et datadefinisjonsspråk (engelsk data definition language) og et datamanipulasjonsspråk (engelsk data manipulation language). Datadefinisjonsspråk brukes til å sette opp en relasjonsdatabase, å lage tabellene den består av og kolonnene de enkelte tabellene består av. Disse definisjonene av tabeller og kolonner kalles ofte for skjemaet til relasjonsdatabasen. Datamanipulasjonsspråk brukes til å stille spørsmål til databasen (engelsk query), sette inn data i databasen, slette data i databasen eller endre på data i databasen.

Eksempel på en spørring

Spørring
Tabell med innhold og resultattabell fra spørringen SELECT tittel, type FROM eiendeler WHERE plassering="Hylle 5";
Spørring

Her er et eksempel på en enkel SQL-spørring, der vi har en relasjonsdatabase som inneholder en oversikt over eiendelene til en organisasjon. Vi ønsker å spørre denne databasen om navn og type for alle eiendelene som er plassert i hylle nummer 5, og kan da skrive følgende:

  • SELECT tittel, type
  • FROM eiendeler
  • WHERE plassering="Hylle 5"

Merk at SQL ikke skiller mellom store og små bokstaver. I dette eksemplet er store bokstaver brukt for SQL-kommandoene, og små bokstaver brukt for navn på kolonner og tabeller for å skille dem bedre.

SELECT-delen av spørringen inneholder hvilke kolonner i tabellen man ønsker, i dette tilfellet tittel og type. FROM-delen av spørringen inneholder tabellen man ønsker data fra, i dette tilfellet tabellen eiendeler. WHERE-delen inneholder en betingelse på radene i tabellen. I dette tilfellet vil svaret bare inneholde de radene hvor kolonnen plassering har verdien Hylle 5.

Et eksempel på et gitt innhold i tabellen eiendeler er vist i figuren som en to-dimensjonal tabell med 5 rader med noen gitte attributtverdier. Svaret fra spørringen over kan betraktes som en resultattabell med de to kolonnene (attributtene) til de radene som tilfredsstiller kravet om plassering i Hylle 5.

Eksempler på andre SQL-kommandoer

Kommando Funksjon
INSERT Setter inn en ny rad i en tabell
UPDATE Oppdaterer eller endrer innholdet i en eller flere rader i en tabell
DELETE Sletter en eller flere rader i en tabell
CREATE TABLE Lager en ny tabell
ALTER TABLE Endrer en tabell. Denne kommandoen kan for eksempel brukes til å legge til nye kolonner i en tabell.

Historie

En første versjon av SQL ble utviklet i et forskningsprosjekt på relasjonsdatabaser ved IBM tidlig på 1970-tallet. Da ble det kalt «A Structured Query Language», men det inneholdt mer enn bare spørreoperasjoner selv om navnet indikerer at det bare er et spørrespråk.

SQL ble første gang standardisert i 1986 (først av ANSI, så av ISO året etter). Siden er det kommet flere endringer eller tillegg, siste gang i 2016.

Les mer i Store norske leksikon

Kommentarer

Kommentarer til artikkelen blir synlig for alle. Ikke skriv inn sensitive opplysninger, for eksempel helseopplysninger. Fagansvarlig eller redaktør svarer når de kan. Det kan ta tid før du får svar.

Du må være logget inn for å kommentere.

eller registrer deg