Billeder i Access

Det er muligt at lagre billeder i en Access database. Disse skal i så fald gemmes i en tabel i felter af typen OLE-objekt. Dette giver dog hurtigt problemer fordi en database, der indeholder billeder meget hurtigt vokser, og Access har en begrænsning på 2 Gb (version 2003). Denne begrænsning kan meget hurtigt nås med selv forholdsvis få billeder.

Det er derfor normalt langt bedre at gemme billederne uden for Access databasen (som filer på harddisk eller server). Har man brug for at "se" billederne i en Access formular, kan dette meget nemt gøres ved at placere et billedfelt i formularen, og derefter placere en simpel kode på en eller to hændelser i formularen.

Normalt vil jeg oprette en billedtabel, som indeholder et billedID (primærnøgle). Desuden kan der være felter, som indeholder diverse information om billedet, fx hvad det forestiller, hvornår det er Endeligt laver jeg et eller to felter (oprettet med datatypen Tekst) til sti og filnavn for de enkelte billeder. Ligger alle billederne i samme sti vælger jeg af og til at "hardcode" stien i koden, der viser billederne. I så fald har jeg bare et enkelt felt til filnavnet.

Et simpelt eksempel på en sådan tabel kunne se ud som følger:

og i tabelvisning:

På formularen, hvor billederne skal vises indsætter jeg de relevante felter fra tabellen, herunder beskrivelse, samt andre informationer, som jeg vil vist i formularen. Desuden indsætter jeg et felt af typen Billede. I dette felt indsætter jeg et billede - typisk det første, der skal vises, når formularen åbnes

På formularens VedAktuel hændelse lægger jeg så denne kode:

Private Sub Form_Current()
    Dim Kilde As String
    Kilde = "c:\billeder\" & Me!Billednavn
    Me!B1.Picture = Kilde
End Sub

Stien skal naturligvis tilpasses til den sti, der er relevant for de pågældende billeder.

- Til top -
- Tilbage til Access -