Introduktion Til Databaser
220px-LA2-katalogkort.jpg

I web-applikationer er databaser typisk fundamentet for hele applikationen - databasen indeholder det vigtigste, nemlig applikationens data. Data i en database er struktureret og på en form, der oftest understøtter, at data er nemt at trække ud igen.

I gamle dage, før udbredelsen af computere, strukturerede man også data, så det var nemt at holde styr på. Biblioteker holdte dengang styr på deres bøger og udlån i kartoteker med kartotektskort. En database kan netop opfattes som kartoteker med kartotekskort. Nedenfor er en database for et bibliotek. Databasen indeholder tre typer kartoteker (i database sprog, tabeller): En lånertabel, en bogtabel, og en udlånstabel.

Lånere:

Låner Nr. Adresse Postnr. By Fornavn Efternavn
1 Vestergade 7 1234 Udby Andrea Andersen
2 Bredgade 1 1234 Aarhus Kasper Hansen

Bøger:

ISBN Fornavn Efternavn Titel
6660000000000 Andrea Andersen Intro til Databaser
8883161484101 Danny Dalum Mere om Databaser

Udlån:

Dato ISBN Låner nr
01-03-2011 6660000000000 1

Tabellerne består af søjler og rækker. Rækkerne kan ses som et konkret kartoketskort, søjlerne i de enkelte rækker kan ses som indholdet af kortet i et struktureret format. I lånertabellen findes der to rækker, svarende til to kartotekskort.

I nutiden, kan man i stedet for kartoketskort, realiserer en sådan database som tre filer. Denne tilgang er fin, sålænge filerne indeholder et begrænset antal udlån, og der kun er en person til at adminstere filerne.

Antag i stedet at filerne var en database for alle kommunens biblioteker. I dette tilfælde vil der dukke problemer op:

  • Filerne bliver meget lange og det vil komme til at tage lang tid at finde ting i databasen.
  • For at der ikke skal opstå flaskehalse bliver flere brugere nødt til at kunne indsætte og slette data samtidigt. Dette medfører høj risiko for at data går tabt, fx hvis en bruger åbner filen, en anden bruger åbner efterfølgende filen, den første gemmer, og den sidste gemmer. I dette tilfælde vil den første brugers information gå tabt.

Et database system, fx MySql, løser de ovenstående problemer ved hjælp af avancerede algoritmer. Hovedsageligt er fordelen ved at benytte et database system kontra regulære filer på disken at:

  • Flere brugere kan læse og skrive data på samme tid uden at data går tabt eller kommer til at indeholde fejl.
  • Data kan findes hurtigt

I de følgende lektioner bliver det gennemgået hvordan en database som biblioteksdatabasen designes.

Medmindre andet er angivet, er indholdet af denne side licenseret under Creative Commons Attribution-NonCommercial 3.0 License