oprettelse af nye databaser
en ny database er en container, der indeholder alle de tabeller, formularer, rapporter, forespørgsler, makroer og moduler, du opretter. I Access 2010 kan du oprette en ny database ved at klikke på fanen “File” i båndet. Klik derefter på kommandoen” Ny”. Vælg derefter valget” Blank database “i afsnittet” tilgængelige skabeloner”. I Access 2007 kan du oprette en ny tom database ved blot at klikke på knappen “tom Database” i afsnittet “ny tom Database” på velkomstskærmen “Kom godt i gang med Microsoft Access”. I ruden “tom Database”, der vises til højre på skærmen, kan du indtaste et navn til databasen i tekstfeltet” Filnavn:”. Hvis du vil ændre standardmappen, hvor databasefilen gemmes, kan du klikke på den lille mappeknap i højre ende af tekstfeltet “Filnavn:” for at starte dialogboksen “Fil Ny Database”. Brug denne dialogboks til at give den nye databasefil et navn, og vælg også, hvor du vil gemme filen. Når du er klar, skal du klikke på knappen “OK” for at lukke dialogboksen. Klik derefter på knappen” Opret ” for at oprette den nye databasefil. Når det er gjort, vises den nye tomme database i Hovedadgangsgrænsefladen.
strøm oversigt over en Database
en database skal være enkel, logisk og ligetil i sit design. Generelt bruger du formularer til at indtaste oplysninger i tabeller. Dataene gemmes derefter i disse tabeller, som er relateret til hinanden efter behov. Du kan bruge forespørgsler til at hente specifikke oplysninger fra tabellerne i databasen. Forespørgslerne danner ofte grundlaget for rapporter, som derefter giver dig mulighed for at se de oplysninger, du har anmodet om. Når dette system er på plads, kan du automatisere det ved hjælp af makroer og moduler til at forenkle og strømline de processer, der er involveret i indtastning, lagring og hentning af data. Dette er hovedårsagen til, at du bruger databaser: at indtaste, gemme og hente data.
‘Flat-File’ – metoden til datalagring
Access er en relationsdatabaseapplikation. Så hvad betyder udtrykket relationel, og hvordan er dette vigtigt? Udtrykket relationel beskriver den metode, der bruges til lagring af data i databasetabellerne. Det kan dog være lettere at forstå den relationelle model for datalagring ved at kontrastere den med en anden lagringsmetode, som du måske er mere fortrolig med: ‘flat-file’ – metoden.
oplysninger gemmes ofte i store ‘flade filer. Antag f.eks., at du vil oprette en databasefil, der gemmer din virksomheds kundeoplysninger. Du vil begynde med at liste de forskellige attributter for den kunde, du ønsker at optage. Det kan være en god ide at registrere kundeoplysninger som “fornavn”, “efternavn”, “firmanavn” og andre relevante oplysninger. Måske kan du oprette en tabel i et program som Microsoft, hvor du kan oprette kolonner for hvert stykke information, du ønsker at optage. Du kan derefter liste hver kundes oplysninger i rækkerne under kolonnerne og oprette en grundlæggende tabel. Antag, at det ligner følgende eksempel.
for mange typer databaser ville strukturen vist på forrige side fungere godt. Dette er en’ flad-fil ‘ liste eller tabel. Hvad du gør, når du bruger denne type database, optager et enkelt stykke information, som “fornavn”, “efternavn” eller “Adresse” om en enkelt enhed – i dette eksempel en kunde. Årsagen til, at denne type datastruktur fungerer godt i det givne eksempel, er, at du for hver enhed (kunden) kun registrerer oplysninger, der har et “1 til 1” – forhold til enheden.
så hvad er betydningen af dette “1 til 1” forhold mellem enheden (kunden) og de data, du optager (“Fornavn”, “Efternavn” osv.)? Hvad dette betyder er, at for hver enhed eller emne (i dette tilfælde – kunden) registrerer du kun oplysninger om den enhed, for hvilken der kun ville være et “svar.”For eksempel ville hver kunde kun have et “fornavn” og et ” efternavn.”De ville arbejde for kun en” virksomhed.”Så udtrykket” 1 til 1 ” henviser til forholdet mellem emnet i tabellen (kunder) og de data, der indsamles om enhederne. Fordi der for hver (en) kunde kun er et muligt stykke data, der skal registreres i kolonnen, siger du, at forholdet mellem dataene og enheden er “1 til 1.”Hvis dette er den type database, du prøver at oprette, fungerer enkle Microsoft-tabeller godt.
problemet begynder at opstå, når du forsøger at bruge en ‘fladfil’ tilgang til at modellere en mere kompleks enhed eller emne, som “salg.”Antag for eksempel, at du ønskede at udvide kundedatabasen fra den sidste ‘fladfil’-database for at inkludere salgsdata. Lad os sige, at du ud over de oplysninger, der allerede er indsamlet, også vil registrere hver ordre foretaget af en kunde.
først vil du starte med at angive, hvilke data om hvert salg, du vil optage. Hvis du holder eksemplet enkelt, skal du antage, at du beslutter at registrere “salgsdato”, “købte varer”, “mængde” af købte varer” og “beløb”, der er betalt for hver vare. Du kan beslutte at tilføje følgende kolonner til ‘flat-file’ datastruktur.
dette kan synes at virke ved første øjekast. Du vil dog straks begynde at støde på problemer, når du begynder at indtaste poster i filen. Til at begynde med, hver gang en kunde foretager et køb, skal du indtaste alt “Fornavn”, “Efternavn” osv. information igen. Dette alene er irriterende nok.
en løsning, der ofte foreslås på dette tidspunkt, er at indtaste en anden række (med alle de overflødige oplysninger) en gang for hver købt vare. Du vil dog snart opdage, at denne fil vil vokse ganske hurtigt ned i tabellen, og du bliver også nødt til at indtaste en masse overflødige kundedata for hver købt vare. Dette er ikke en elegant løsning og vil uundgåeligt spilde både tid og kræfter på den person, der udfører dataindtastningen.
en anden løsning, der ofte foreslås på dette tidspunkt, er at oprette yderligere kolonner (som “Vare1”, “Vare2”, “Vare3”, “Mængde1”, “Mængde2,” Mængde3″ osv.) i stedet for at skulle indtaste yderligere rækker af oplysninger. Selvom dette kan virke som en god alternativ løsning, hvad vil du gøre, når nogen køber 100 varer? Vil du virkelig oprette et sæt med 3 kolonner (“vare”,” mængde”,” mængde”) for hver købt vare, der producerer en tabel over 300 kolonner på tværs? Vil du blot lade dem være tomme, hvis personen kun bestiller 1 vare og spilder værdifuld lagerplads? I denne løsning erstatter du simpelthen søjleformet vækst (på tværs) for lodret vækst (ned). Dette er heller ikke en elegant løsning.
så hvorfor er der et problem nu, da der ikke var en tidligere? Svaret er, at du nu ikke længere forsøger at modellere et “1 til 1” dataforhold i filen. Registrering af salgsoplysninger er simpelthen mere kompleks end registrering af kundeoplysninger. Det, du prøver at optage nu, er det, der kaldes et “1 til mange” forhold. Grundlæggende forsøger du for hver enhed (kunden) nu at registrere data i kolonnerne, der kan forekomme mere end en gang pr. Du ville være i en ked tilstand, hvis hver kunde kun kunne købe en enkelt vare. Du skal give mulighed for, at hver kunde i et salg kan bestille mange varer. Forholdet mellem kunder og købte varer er et “1 til mange” forhold. Når du finder ud af, at du forsøger at modellere et “1 til mange” forhold, er det så, at du skal opgive ‘flat-file’ – metoden til datalagring, hvor du forsøger at placere alle de oplysninger, du vil optage i en enkelt tabel, og i stedet henvende dig til den relationelle model for datalagring til løsningen.