En database er en logisk organiseret samling af informationer i elektronisk form, hvor man vha. en brugergrænseflade kan læse data, ændre data, indsætte data og slette data.
Databasesystemer bruges til at opbevare data, så det er let og hurtigt at finde, gemme og ændre data i systemet.
Når der hæves penge, bestilles flybilletter og købes varer over internettet, er der tale om transaktioner, der involverer databaser. Virksomheder lagrer informationer om medarbejdere, kunder og økonomi i databaser. Efterretningstjenester lagrer forbryderprofiler i databaser.
På Bilbasen.dk er der over 51.000 brugte biler til salg. Via hjemmesiden kan man søge i databasen efter en bil der passer til ens behov.
Bilerne er organiseret i en database. Hver bil er givet et entydigt nummer (en nøgle) og der er knyttet forskellige attributter til hvert nummer. En attribut er parametre, der knytter sig til den enkelte bil. Eksempelvis mærke, model, farve, bilens årgang, drivmiddel, udbudt salgspris, osv.
Når man skal søge efter en bil, man vil købe, kan man indstille forskellige værdier for hver attribut, så man ikke skal se 51.412 biler igennem for at finde den rette bil.
Gå ind på www.bilbasen.dk. Læg mærke til det mørkeblå felt. Det viser indledningsvis hvor mange biler databasen indeholder. Efterfølgende ændrer tallet sig efter, hvor mange biler der passer til de kriterier, du bestemmer.
Indstil attributterne så der er 28 biler at vælge imellem. Begynd fx med Personbil, Citröen, Model C1, Pris til 50.000 kr. Hvis det er svært at komme ned i antal, så prøv at skrue på attributterne Drivmiddel, Modelår eller Km.
En databasen indeholder forskellige objekter, som vi kalder en entitet (entity). I Bilbasen er der altså 51.412 entiteter. En entitet ligger inde i databasesystemet, og der kan søges på den. Entiteter er ofte fysiske ting såsom personer, biler og bøger, men det kan også være stillingsbetegnelser, e-mailaddresser eller lignende.
En entitet i en database er kendetegnet ved en række egenskaber eller kendetegn, som fx en bil som har mærke, årstal, model, brændstofforbrug, pris, farve, antal døre, antal km og mange andre. Dem kalder vi attributter.
Det er vigtigt, at hver enhed i databasen er unikke og ikke kan forveksles, så man fx ikke kan sælge den samme t-shirt to gange til to forskellige kunder. Derfor har hver entitet en speciel attribut, der kaldes en nøgle.
En database er opbygget af tabeller, som ligger på computere og servere. Man bruger et SQL-værktøj (Structured Query Language) for at søge i tabellerne.
Tabeller over informationer har vi altid brugt, fx har biblioteker haft store kartoteker over bøger og lånere, som skulle samkøres. Fordelene ved elektroniske tabeller og især relationelle databaser er dog betydeligt større.
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:
Bøger:
Udlån:
Tabellerne består af søjler og rækker. Rækkerne kan ses som et konkret kartotekskort. 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.
Se på de tre tabeller ovenfor:
Hvilken låner har i biblioteksdatabasen lånt en bog?
Hvilken bog har låneren lånt?
Hvad vil det sige at data i databasen er struktureret?
Hvilke forhold er der imellem tabellerne? (se på tabellernes overskrifter)
Hvordan vil biblioteksdatabasen se ud, hvis den var realiseret igennem en enkelt tabel? Hvilke fordele og ulemper er der ved det?
Et databasesystem består af to dele. En database, der er en struktureret datamængde, og en brugergrænseflade, som giver brugeren tilgang til databasen. Brugeren af en database kan vha. brugergrænsefladen…
læse data i databasen
indsætte data i databasen
ændre data i databasen
slette data i databasen
En entitet er en enhed, der ofte er en enhed i fysisk forstand. Fx en bil, en person eller et spil.
En attribut er en egenskab ved en entitet.
En nøgle er et unikt nummer, som kun den ene entitet har. Alle entiteter i en database skal have en nøgle.