Institutt for informatikk og matematiske fag

 

Kurs 860 IKT

Databaser


Introduksjon

En database er en strukturert permanent samling av data. Et databasesystem skal både sørge for lagring av data og kunne utføre tjenester i form av visning eller presentasjon av data som svar på forespørsler fra brukeren eller eksterne programmer. Det fins mange databasesystemer, f.eks. Oracle, Sybase, Microsoft Access og MySQL.

En database består av en eller flere (database-)tabeller. En tabell består av felter -  også kalt  kolonner - og poster - også kalt rader. Postene uttrykker de enkelte sett av data i tabellen, mens feltene uttrykker egenskapene som en post har. Tabellen nedenfor viser et eksempel på en tabell med 3 poster og 4 felter. (Feltnavnet ID står for identifikator.)

  Felter
ID Fornavn Etternavn Mål
Poster 1 Jostein Flo 12
2 Frode Johnsen 10
3 Clayton Zane 17
4 Harald Brattbakk 9
5 Håvard Flo 5

Hvert felt har sin datatype. I tabellen ovenfor vil feltene ID og Mål kunne ha datatype heltall, mens feltene Fornavn og Etternavn har datatype tekst. Andre vanlige datatyper er bl.a. desimaltall, flyttall, dato, valuta og notater (store tekstenheter).

Når data fra flere tabeller skal kombineres i såkalte spørringer (som beskrives nedenfor), er det viktig at hver tabell har ett felt med unike data. Det er derfor vanlig at databasesystemet oppretter et felt med unike data for hver post. Et slikt felt kalles primærnøkkel (eng.: primary key), som gjerne får datatypen heltall (eng.: integer). Databasesystemet lager et nytt ID-nummer for hver nye post som opprettet vha. autonummerering.

Du kan trekke ut data av en database fra én tabell eller fra flere tabeller samtidig vha. såkalte database-spørringer (eng.: queries). Det er utviklet et standard-spørrespråk kalt SQL (Structured Query Language) som støttes av databaseleverandørene - riktignok med enkelte dialektforskjeller mellom leverandørene. Her er et eksempel på en spørring basert på tabellen ovenfor (tabellen har navn Tabell1):

SELECT *
FROM Tabell1
WHERE Etternavn LIKE "Br*";

"SELECT *" betyr "velg alle". Denne SELECT-spørringen vil resultere i poster som inneholder "Br" i begynnelsen av Etternavn-feltet, her posten med ID-nummer 4.

Et annet eksempel på spørring er

SELECT *
FROM Tabell1
WHERE Mål > 10;

Denne SELECT-spørringen vil resultere i postene med ID-nummer 1 og 3.

SQL er beskrevet nærmere i kap. 8.6.4 i læreboka Innføring i Informasjonsteknologi.


Bruk av databasesystemet Microsoft Access

Microsoft Access er et populært databasesystem. Access er egnet for middels store anvendelser (en Access-database har maksimal størrelse ca. 2 GB).

Vi skal i det etterfølgende opprette en database med navn db1.mdb, som skal inneholde tabellen Tabell1 med dataene angitt ovenfor.

Lage database og tabell

Etter at du har startet Access, kan du velge å opprette en ny database fra scratch (tom), dvs. uten bruk av veiviser. Du får spørsmål om valg av filnavn, og i dette eksempelet velger jeg navnet db1.mdb. Dermed åpnes et databasevindu, som vist i figur 1 nedenfor.

Figur 1

Her kan du velge "Lag tabell i utformingsvisning". Dette åpner et nytt vindu, der du kan opprette felter med ønskede datatyper, se figur 2 nedenfor.

Figur 2

Figur 2 viser tabellen i såkalt utformingsvisning. For å begynne å legge inn data, må tabellen vises i dataarkvisning, hvilket fås med menyvalget Vis / dataarkvisning i Access-vinduet eller ved å høyreklikke på det blå tittelfeltet øverst i vinduet og så velge dataarkvisning. Figur 3 viser tabellen i dataarkvisning etter at data er skrevet inn. (Access legger inn ID-nummeret automatisk i det du skriver i én av cellene i den aller nederste raden.)

Figur 3

Lage spørring med SQL

Du kan opprette en spørring via menyvalget Sett inn / Spørring i Access-vinduet, hvilket åpner et vindu vist i figur 4.

Figur 4

Her kan du velge Utformingsvisning, hvilket åpner vinduet vist i figur 5.

Figur 5

I vinduet vist i figur 5 kan du lage spørringer via klikk-og-velg. Vi skal imidlertid lage en spørring ved å skrive SQL-uttrykk manuelt. (Access lager SQL-uttrykk automatisk dersom du velger klikk-og-velg-metoden.) Vi får fram SQL-editoren ved å høyreklikke på tittelfeltet øverst i vinduet vist i figur 5 og velge SQL-visning, hvilket åpner SQL-editoren der du kan skrive dine SQL-uttrykk, se figur 6.

Figur 6

For å se postene som er resultatet av spørringen (SQL-uttrykket), kan du foreta menyvalget Vis / Dataarkvisning i Access-vinduet eller høyreklikke på SQL-editorens tittelfelt og så velge Dataarkvisning. Figur 7 viser resultatet av spørringen vist i figur 6.

Figur 7

Forhåndsvisning og utskrift av data

Du kan se en forhåndsvisning av papirutskriften av en tabell eller av en resultat-tabell av en spørring med menyvalget Fil / Forhåndsvisning i Access-vinduet.

Du kan skrive ut en tabell eller en resultat-tabell av en spørring med menyvalget Fil / Skriv ut i Access-vinduet.


[Kursets hjemmeside] [Framdriftsplanen]
Oppdatert 17.9.01 av Finn Haugen (e-post: Finn.Haugen@hit.no)