… eller …
”Databaser for dummies”.
Det här är en introduktion till databaser för alla som samarbetar och pratar med programmerare och systemvetare, men inte själva är experter i ämnet.
Vi vill ge svar på alla de där frågorna som du aldrig har vågat ställa:
- Hur är databaser uppbyggda?
- Vad är en relationsdatabas?
- Hur fungerar ”stored procedures”?
- Och vad betyder egentligen OODBMS och SQL?
- Här hittar du en kort översikt till hur relationsdatabaser fungerar.
Systemutvecklingens faser och metoder kan du läsa mer om i PDF-format.
Så, varmt välkommen. Hoppas databasskolan blir till nytta för dig!
Nu kör vi!
Databasskolan: Relationsdatabaser
Introduktion till relationsdatabaser
Det finns olika typer av databaser på marknaden. Relationsdatabaser (RDBMS – Relational DataBase Management System) är överlägset vanligast idag.
Vanliga relationsdatabaser är Oracle, Sybase, DB2 och Microsoft SQL server. Även MS Access betraktas som en enkel relationsdatabas.
Objektorienterade databaser
Den nyaste typen av databas, objektorienterad databas (OODBMS – Object Oriented DataBase Management System) har funnits i cirka 20 år men används mycket begränsat, framförallt till ”otraditionell” datalagring som multimedia och CAD/CAM-ritningar.
Tabeller
En relationsdatabas är uppbyggd av tabeller. Dessa består av fält (kolumner) och poster (rader). I exemplet nedan, tabellen ”Anställda”, är fälten personnummer, namn och lön de uppgifter ett företag vill lagra om sina anställda. Varje anställd är en post/rad i tabellen.
Primärnycklar
Det får inte finnas två likadana rader i en tabell. Därför använder man sig av så kallade primärnycklar (eng. primary key), ett eller flera fält som gör posten unik.
I exemplet nedan är personnummer primärnyckel.
Personnummer Namn Lön 600606-1234 Pelle 30.000 700707-1234 Stina 25.000 800808-1234 Kalle 20.000
I vissa skisser markeras primärnyckel med understrykning. I andra notationer används bl a * (asterisk) framför nyckeln, eller förkortningen p.k., primary key, efter nyckelfältet.
Relationer
Som namnet relationsdatabas antyder har de olika tabellerna relationer med varandra. De kopplas samman via via gemensamma fält. Tabellen över anställda kan t ex innehålla en kod för arbetsplats (huvudkontoret, lokalkontor 1, lokalkontor 2 etc) som kopplar ihop den med en tabell över samtliga arbetsplatser.
Att hämta data med SQL
För att ta fram data ur en relationsdatabas använder man frågespråket SQL (Structured Query Language). Det är standardiserat, men de flesta stora databastillverkare har gjort sina egna tillägg till grundstandarden.
En SQL-fråga kan se ut så här: SELECT Number, Name FROM Employee WHERE Salary > 20000
Denna fråga söker fram personnummer och namn för de poster i tabellen Employee där lönen överstiger 20.000 kr / mån. Man kan också göra mer avancerade frågor med bl a sortering.
Mer om SQL
SQL används också för att ändra data i en tabell, t ex lägga till poster (INSERT), ta bort poster (DELETE) eller ändra befintliga poster (UPDATE).
Man använder också SQL-satser för att skapa databaser, tabeller och relationer. Flera SQL-satser kan kombineras till mindre program, som kallas triggrar (triggers) resp. lagrade procedurer (stored procedures).
I en Windows- eller webbapplikation matar användaren ofta in sökkriterier i ett formulär. En applikation (programkod) tar då hand om uppgifterna och översätter dem till en SQL-fråga, som skickas till databasen. Databasen skickar ett resultatset (result set) med de framsökta posterna tillbaka till applikationen, som presenterar dem på ett förståeligt sätt i användargränssnittet.
En så kallad treskiktslösning är vanlig framför allt i webbmiljö. Logikskiktet kan delas upp ytterligare i logiska eller fysiska skikt, och man talar ofta om flerskiktslösningar.

Systemutveckling
Vill du lära dig mer om systemutveckling?
I vårt databasdokument (pdf) kan du läsa mer om:
- Metoder och modeller för utveckling av databaser och system
- De olika faserna i utvecklingsarbetet: analys och design, normalisering och implementation
Av Maria Brolin, 2002
Böcker i databasteknik:
- Database systems : a practical approach to design, implementation and management. Connolly, Thomas M. & Begg, Carolyn,
3 uppl. Addison-Wesley, 2001.
- An introduction to database systems. Date, C.J., 7 uppl. Addison-Wesley, 1999.
- Fundamentals of database systems. Elmasri, Ramez & Navathe, Shamkant B., 3 uppl. Addison-Wesley, 1999.
Det finns även handböcker om specifika databaser, som Access, Sybase, Oracle etc.
Av Maria Brolin, 2002
Om författaren:
Maria Brolin har läst biblioteks- och informationsvetenskap på Högskolan i Borås och systemvetenskap på Högskolan i Jönköping.
Maria har många års erfarenhet av att jobba med databasbaserade informationssystem. Hon har bland annat jobbat som IT-ansvarig på Högskolebiblioteket i Jönköping och med IT-frågor på Kungliga Biblioteket.
När denna artikel skrevs 2002 var hon sedan två år tillbaka anställd som informationsarkitekt på Ericsson. Där jobbade hon med bland annat sökmotorer och content management-system.
Lämna ett svar