Databaser: Introduktion till Microsoft Access (2023)

Det här är ett avsnitt i enwebbkurs om databasersom finns fritt tillgänglig på adressenhttp://www.databasteknik.se/webbkursen/.Senaste ändring:16 juli 2005.

Av Thomas Padron-McCarthy.Copyright,alla rättigheter reserverade, osv.Skicka gärna kommentarer tillwebbkursen@databasteknik.se.

Det här avsnittet beskriver en äldre version av Access.Motsvarande kapitel i boken Databasteknikär uppdaterat med information om de senaste versionerna.

Jag är inte expert på Microsoft Access, eller på Microsofts övriga produkter.Därför är det förmodligen ingen idé att fråga mig om annat än mycket enklasaker när det gäller Microsoft-specifika tekniker och produkter.Det gäller till exempel Access, ASP och IIS.Men skicka gärna kommentarertill migom du hittar något som verkar vara fel i det här avsnittet.

Microsoft Access är en vanligt förekommande kommersielldatabashanterare.från Microsoft. Den har ett lättanvänt grafiskt användargränssnitt.Den underliggande funktionaliteten, till exempel SQL-dialekten,är inte lika avancerad som i en del andradatabashanterare.Den fungerar enbart tillsammans med operativsystemet Windows.

Det här avsnittet beskriver Microsoft Access 2000,som är den version av Access som ingår i Microsoft Office 2000.Skillnaderna jämfört med den tidigare versionen Access 97(som ingår i Office 97)och den nyare Access 2002(som ingår i Office XP) är inte så stora,när det gäller den grundfunktionalitet som beskrivs här.Det finns dock några korta kommentarer om skillnaderna mellan de olika versionernaav Access sist i det här avsnittet.

Läs mer på Microsofts egna webbsidor:

Intressanta artiklar om Access finns också påhttp://databases.about.com/cs/access/.

Starta Microsoft Access

Starta Microsoft Access genom att klicka på Start-knappen,sen på Program och sen på Microsoft Access.Access startar, och det kommer fram ett litet fönster där man får välja vilkendatabasman vill arbeta med.(En Access-databas lagras som en fil någonstans på hårddisken.)Välj Exempeldatabasen Northwind:

Databaser: Introduktion till Microsoft Access (1)

Det kan hända att exempeldatabasen inte är installerad på datorn.I så fall kan du installera den nu,om du har tillgång till en installations-CD för Office 2000:

Databaser: Introduktion till Microsoft Access (2)

När du har öppnat exempeldatabasen Northwindkommer Access att köras i ett fönster som ser ut så här(förutom att du kanske har valt ett annat färgschema på din dator):

Databaser: Introduktion till Microsoft Access (3)

Förmodligen dyker det också upp ett fönster som hälsar dig välkommen till Northwind Traders.Klicka bara på OK så att det försvinner.(Det fönstret ingår egentligen inte i Access, utan det är en finess som manlagt till just i databasen Northwind, som en del av själva databasen.)

Databasfönstret

Access har egna fönster som man kan flytta omkring inuti det större Access-fönstret.Databasen Northwind syns nu i ett databasfönster som ser ut så här:

Databaser: Introduktion till Microsoft Access (4)

Databasen som man har öppnat och arbetar medsyns i databasfönstret.Med hjälp av det kan du studera och ändra i databasen,både dess schema och dess data.

Till vänster i databasfönstret finns en meny,och där kan man välja vilken typ av databasobjekt som man vill visa just nui databasfönstret.

Tabeller

Klicka på Tabeller i menyn till vänster i databasfönstret,så får du se vilka tabeller som finns i Northwind-databasen:

Databaser: Introduktion till Microsoft Access (5)

Nu visar databasfönstret vilka tabeller som finns i databasen.Om du vill titta på innehållet i en tabell såöppnar du tabellen genom att dubbelklicka på den,eller genom att högerklicka och välja Öppna i menyn som kommer fram,eller genom att markera tabellen och sen klicka på Öppna upptill i databasfönstret.Ett fönster med tabellens innehåll öppnas.Access kallar detta för ett datablad(på engelska Datasheet View):

Databaser: Introduktion till Microsoft Access (6)

Tabellen Anställda innehåller fler kolumner än vad som får platsi fönstret, men man kan flytta sig i sidled med den vågräta rullningslisten.Om det finns fler rader än vad som får plats, kan man flytta sigbland raderna med den lodräta rullningslisten.De små knapparna längst ner används också för att flytta sig mellan raderna.(Där ser man också att Access ibland kallar raderna i tabellen för poster.)

Man kan ändra på tabellens innehåll genom att göra ändringar i databladet:

Databaser: Introduktion till Microsoft Access (7)

Det är ett av sätten som man kan lägga in och ändra innehållet i en Access-databas,men för att underlätta för användarna brukar man skapa särskilda formulärför att lägga in data. (Mer om formulär senare.)

Stäng databladet.Om databasfönstret var dolt av databladet, så syns det igen nu:

Databaser: Introduktion till Microsoft Access (8)

Det var tabellens innehåll.Man kan också titta på tabellens schema, eller designsom Access kallar det.Markera tabellen och klicka på Design upptill i databasfönstret,eller högerklicka på tabellen och välj Design i menyn som kommer fram.Det här fönstret visar vilka kolumner som tabellen består av, och deras datatyper.(Notera att Access kallar kolumnerna för fält.)

Databaser: Introduktion till Microsoft Access (9)

Design och datablad kallas för olika visningslägen.Som vi kommer att se nedan så kan alla typer av databasobjekt,inte bara tabellerna, visas i ett eller flera visningslägen.Det finns alltid ett designläge, där man kan göra ändringar i själva objektet.För de flesta typerna av objekt finns det ett eller flera visningslägensom visar objektet "i arbete". För tabeller ser man alltså innehålletsom ett datablad, och man kan bläddra bland raderna, göra ändringar,och även enkla sökningar.

Skapa nya tabeller

Det finns flera olika sätt att skapa en ny tabell i Access.Först i listan med tabeller i databasfönstret finns tre alternativ:

Databaser: Introduktion till Microsoft Access (10)

(Video) How to use Microsoft Access - Beginner Tutorial

Den mest naturliga metoden för en van databasanvändare är kanskealternativet Skapa en tabell i designläge. Då får man upp ett tomt schema(en tom "design", som Access skulle säga), och så talar man om vad kolumnerna ska hetaoch vilka datatyper de har:

Databaser: Introduktion till Microsoft Access (11)

Det finns också en guide (på engelska wizard) som gör det enkeltatt skapa några vanliga typer av tabeller, till exempel ett adressregister elleren kundtabell. Guiden hjälper också till med att att välja primärnyckel,och eventuella kopplingar mellan den nya tabellen och andra tabeller i databasen..Dessutom kan den automatiskt skapa ett formulär för inmatning av data i tabellen.

Databaser: Introduktion till Microsoft Access (12)

Ett tredje sätt är att skapa en tabell genom att mata in data.Dubbelklicka på Skapa en tabell genom att mata in data,så kommer det upp ett tomt datablad. Mata in lite data.Access kommer nu att gissa hur du vill att tabellens schema ska se ut!

Databaser: Introduktion till Microsoft Access (13)

Om man klickar på alternativet Ny i databasfönstrets menyrad(symbolen Databaser: Introduktion till Microsoft Access (14)), så hittar man ytterligare två sättatt skapa tabeller: genom att importera och länka tabeller.Att importera en tabell betyder att man kopierar en tabell från en annan Access-databas.Om man länkar till den, så ligger tabellen kvar i den andra Accessdatabasen,men man kan använda den i sökningar och uppdatering som görs i den här databasen.

Dessutom fungerar det faktiskt också att skriva vanliga create table-kommandoni SQL i Access, men det verkar inte vara en metod som Microsoft har tänkt sigatt man ska använda.

Språkförbistring: Vad är en "relation"?

Access är en relationsdatabashanterare,dvs en databashanterare som lagrar sina data i tabeller.Tabellerna i en relationsdatabas refererar till varandra medreferensattribut,även kallade främmande nycklar.Ett exempel från Northwind-databasen är att tabellen Orderhar en kolumn som heter Skicka med,och som anger vilken speditör (eller "transportfirma")som man ska skicka ordern med när den levereras.För en viss order kanske det står 3 i kolumnen Skicka med.Då går man till tabellen Speditör och letar reda på den speditörsom har 3 som Speditörsnr, och ser att det är en speditörsom heter Federal Shipping.

I engelskspråkiga versioner av Access kallar man en sån koppling för ett relationship,och det har Microsofts svenska översättare valt att översätta med ordet relation.Det är en dålig översättning, eftersom det ordet redan är upptaget:Relationernai en relationsdatabas är själva tabellerna.

Det finns också en del andra ovanliga sätt att uttrycka sig i Accessoch dess dokumentation. Till exempel kallar de främmande nycklarför sekundärnycklar.

Kopplingar mellan tabellerna

Både när man skapar tabeller och efteråt kan man ange vilka kopplingar medreferensattribut(även kalladefrämmande nycklar)som finns mellan tabellerna.

Kom ihåg:Access kallar kopplingarna mellan tabellerna för "relationer".Det är fel. Det är själva tabellerna som heter "relationer".

Börja med att öppna fönstret med kopplingarna mellan tabeller.Klicka på Verktyg i menyraden överst i Access-fönstret,och välj Relationer:

Databaser: Introduktion till Microsoft Access (15)

Så här ser fönstret med tabellkopplingarna ut:

Databaser: Introduktion till Microsoft Access (16)

Det här är inte ettER-diagram.Rutorna föreställer tabeller, inte ER-modellens entitetstyper,och strecken mellan tabellerna är kopplingar med referensattribut,inte ER-modellens sambandstyper.

Genom att dubbelklicka på en av kopplingarna,till exempel den mellan Kunder och Order,kan vi studera detaljerna för den kopplingen:

Databaser: Introduktion till Microsoft Access (17)

Det här betyder att kolumnen Kundnr i tabellen Orderrefererar till kolumnen Kundnr i tabellen Kunder.(Varje rad i ordertabellen motsvarar en order, och i kolumnen Kundnrstår det vilken kund som skickat in den ordern.)

1:N betyder att en kund kan skicka in många order, men att varje order hör ihopmed en enda kund.(Och nej, det är fortfarande inget ER-diagram.)

Som synes kan man kryssa för om Access ska upprätthållareferensintegritet,och hur den i så fall ska göra. Här har vi markerat att ja,Access ska se till att referensintegriteten upprätthålls,och om kundens nummer ändras så ska kundnumret också ändras i de order som den kunden skickat in.(Det här motsvarar konstruktionen on update cascade i SQL.Läs mer i kursavsnittet Integritetsvillkor.)

Om man försöker ta bort en kund ur databasen,och det finns rader i Order-tabellen som refererar till den kunden,så misslyckas försöket, och man får i stället ett meddelande om det:

Databaser: Introduktion till Microsoft Access (18)

Om vi klickar på knappen Kopplingstyp öppnas ett fönster där vi kan välja hurden här kopplingen ska användas i frågor. Uttryckt irelationsalgebrabetyder det att vi väljer om kopplingen mellan tabellerna skagöras med en vanlig join, en vänster-yttre join, eller en höger-yttre join.Full yttre join går inte att ange.

Databaser: Introduktion till Microsoft Access (19)

Frågor

Gå tillbaka till databasfönstret, och klicka påFrågor i menyn till vänster.Nu visas de frågor som definierats i Northwind-databasen:

Databaser: Introduktion till Microsoft Access (20)

Det som Access kallar frågor motsvarar bådedet som brukar kallas frågor(SQL-kommandot select ...)och det som brukar kallas vyer(SQL-kommandot create view ... as ...).En vy i SQL är ju egentligen en fråga som sparats och fått ett namn.

Vi kan köra en av frågorna genom att dubbelklicka på den,eller markera den och sen klicka på Öppna i listen högst upp i databasfönstret.Nu körs frågan, och resultatet kommer upp i ett fönster.Precis som för tabeller kallas det för ett datablad.

(Video) En kort introduktion till Microsoft Access

Databaser: Introduktion till Microsoft Access (21)

Det var resultatet av frågan.Man kan också titta på definitionen av frågan.Högerklicka på frågan i databasfönstret,eller högerklicka direkt på databladets namnlist,och välj sen Design i menyn som kommer fram.

Databaser: Introduktion till Microsoft Access (22)

Om man studerar den här designen ser man att frågan baseras på tabellen Produkter,att den ska visa kolumnerna Produktnamn och Enhetspris,sorterat i fallande ordning efter Enhetspris,och att den bara tar med de produkter som är dyrare än genomsnittspriset för en produkt.

Den frågan kan du kanske formulera med SQL,och kan man tänka sig, det kunde Access också!Högerklicka på namnlisten i designfönstret och välj menyalternativet SQL.Access har översatt designen ovan till en SQL-fråga som ser ut så här:

Databaser: Introduktion till Microsoft Access (23)

Vi förenklar lite, och ser att det är helt vanlig och fullt begriplig SQL(för den som kan SQL):

SELECT DISTINCTROW Produktnamn, EnhetsprisFROM ProdukterWHERE Enhetspris > (SELECT AVG(Enhetspris) FROM Produkter)ORDER BY Enhetspris DESC;
Precis som med en tabell som visas som ett datablad så gårdet att ändra i en fråga som visas som ett datablad.Ändringarna görs i den tabell, eller de tabeller, som frågan baseras på.Genom att ändra ett produktnamn som visas i resultatet av den här frågan,ändrar vi namnet på en produkt i tabellen Produkter:

Databaser: Introduktion till Microsoft Access (24)

En mer komplicerad fråga

Vi går tillbaka till databasfönstret och väljer frågan Fakturor:

Databaser: Introduktion till Microsoft Access (25)

Frågan Fakturor är en ganska komplicerad fråga,som hämtar data från flera olika tabeller för att räkna utinformation om fakturor.Den tittar till exempel i tabellen Orderför att se vem som har gjort beställningen,den tittar i tabellen Orderspecifikationerför att se vilka produkter som kunden har beställt,den tittar i tabellen Produkter efter vad de levererade sakerna heter,och så vidare.Varje rad i resultatet av frågan motsvarar en faktura från vårt företagtill en av våra kunder.

Vi kör frågan, eller "öppnar" den som Access säger, och tittar på resultatet:

Databaser: Introduktion till Microsoft Access (26)

Högerklicka och välj Design. Så här ser designen av frågan ut:

Databaser: Introduktion till Microsoft Access (27)

Notera hur tabellerna har kopplats ihop för att visahur raderna i olika tabeller hör ihop i frågan.

Överkurs för den som kan SQL

Högerklicka igen på designfönstret för frågan Fakturor, och välj SQL.Access har översatt designen ovan till en SQL-fråga som ser ut så här:

Databaser: Introduktion till Microsoft Access (28)

Ojojoj. Så här blir det i textform:

SELECT DISTINCTROW [Order].[Leveransmottagare],[Order].[Leveransadress], [Order].[Leveransort],[Order].[Leveransregion], [Order].[Leveranspostnummer],[Order].[Leveransland], [Order].[Kundnr], [Kunder].[Företagsnamn],[Kunder].[Adress], [Kunder].[Ort], [Kunder].[Region],[Kunder].[Postnummer], [Kunder].[Land], [Förnamn] & " " & [Efternamn]AS Säljare, [Order].[Ordernr], [Order].[Orderdatum],[Order].[Begärt leveransdatum], [Order].[ExpedieratDen],[Speditörer].[Företagsnamn], [Orderspecifikationer].[Produktnr],[Produkter].[Produktnamn], [Orderspecifikationer].[Enhetspris],[Orderspecifikationer].[Antal], [Orderspecifikationer].[Rabatt],CCur([Orderspecifikationer].[Enhetspris]*[Antal]*(1-[Rabatt])/100)*100AS SlutligtPris, [Order].[Frakt] FROM Speditörer INNER JOIN (ProdukterINNER JOIN ((Kunder INNER JOIN (Anställda INNER JOIN [Order] ON[Anställda].[Anställningsnr]=[Order].[Anställningsnr]) ON[Kunder].[Kundnr]=[Order].[Kundnr]) INNER JOIN Orderspecifikationer ON[Order].[Ordernr]=[Orderspecifikationer].[Ordernr]) ON[Produkter].[Produktnr]=[Orderspecifikationer].[Produktnr]) ON[Speditörer].[Speditörsnr]=[Order].[Skicka med];
Som synes kan de SQL-frågor som Access genererar bli ganska komplicerade.Det beror förstås delvis på att de sökningar som görs ibland är komplicerade,men det beror också på att Access gör en del specialsaker med sina frågor.

Det är en massa kolumner som ska vara med i svaret, så den delen av frågankan man inte göra så mycket åt. Men titta på resten:

...FROM Speditörer INNER JOIN (Produkter INNER JOIN ((Kunder INNER JOIN(Anställda INNER JOIN [Order] ON[Anställda].[Anställningsnr]=[Order].[Anställningsnr]) ON[Kunder].[Kundnr]=[Order].[Kundnr]) INNER JOIN Orderspecifikationer ON[Order].[Ordernr]=[Orderspecifikationer].[Ordernr]) ON[Produkter].[Produktnr]=[Orderspecifikationer].[Produktnr]) ON[Speditörer].[Speditörsnr]=[Order].[Skicka med];
Access har kopplat ihop tabellerna med explicitainre joinarmellan alla tabellerna. I SQL brukar man hellreräkna upp de tabeller som ska användas, i FROM-delen av frågan,och sen ange hur de kopplas ihop i WHERE-villkoret:
...FROM Speditörer, Produkter, Kunder, Anställda, [Order], OrderspecifikationerWHERE Anställda.Anställningsnr = [Order].Anställningsnr AND Kunder.Kundnr = [Order].Kundnr AND [Order].Ordernr = Orderspecifikationer.Ordernr AND Produkter.Produktnr = Orderspecifikationer.Produktnr AND Speditörer.Speditörsnr = [Order].[Skicka med];
(Tabellen Order måste skrivas som [Order] i frågan,eftersom ORDER är ett reserverat ord i SQL. Det används i konstruktionenorder by.)

Det finns två skäl till att Access kopplar ihop tabellerna med explicita inre joinar:

  • För att stämma överens med den grafiska designen.Det är SQL-frågan som är den interna representationen av frågan,och kopplingarna mellan tabellerna som ritas upp när man tittar på dengrafiska designen motsvaras just av de inre joinarna i SQL-frågan.Om man skriver om SQL-frågan så att den inte använder inre joinar,så tappar Access bort kopplingarna. Frågan ger fortfarande samma resultat när man kör den,men kopplingarna har försvunnit ur designen:

    Databaser: Introduktion till Microsoft Access (29)

  • För att möjliggöra ändringar i tabellerna genom att man ändrar i resultatetav frågan. Det går att gå in och ändra på innehållet i vissa av kolumnerna i resultatetav frågan Fakturor, och då ändras innehållet i de tabellersom frågan baseras på.Alla kolumner går inte att ändra, till exempel kolumnen SlutligtPrissom är totalbeloppet för hela fakturan.(Övning: Varför? [Svar])Men man kan till exempel ändra på ett värde i kolumnen Rabatti resultatet, och då ändras motsvarande värde i kolumnen Rabatt i tabellenOrderspecifikationer.Det är inte helt lätt att få den här sortens uppdateringar genom en vyatt fungera i en databashanterare, och Access arbetar med explicitainre joinar för att kunna skilja på tabellerna bättre,och bättre hålla reda på hur kolumnerna i resultatet hör ihop med kolumnerna i tabellerna.

Skapa nya frågor

Man kan skapa nya frågor grafiskt, antingen genom att bygga dem i designlägeteller med hjälp av en guide. I bägge fallen kommer Access automatisktatt hitta de kopplingar medreferensattributsom finns mellan tabellerna, och ta med dem i frågan.

Formulär

Med hjälp av formulär kan man visa sina data snyggt på skärmen,och låta användaren mata in och redigera uppgifter.

Gå tillbaka till databasfönstret och klicka på Formulär i menyn till vänster:

Databaser: Introduktion till Microsoft Access (30)

Nu visar databasfönstret vilka formulär som finns i databasen.Om du vill använda ett av formulären för att ändra eller titta på data,så öppnar du det, enklast genom att dubbelklicka på det.Det här visningsläget, med formuläret i arbete, kallas formulärläge:

Databaser: Introduktion till Microsoft Access (31)

Det här formuläret heter Anställda,vilket råkar vara samma namn som en av tabellerna,och som man kanske kan gissa så kan man använda formuläretför att bläddra bland, läsa och ändra de uppgifter om de anställdasom finns i den tabellen.

Du kan också titta på formuläret i designläge,enklast genom att högerklicka på formulärfönstrets titelrad och välja Formulärdesigni menyn som kommer fram:

Databaser: Introduktion till Microsoft Access (32)

Det dyker också upp ett litet fönster med en verktygslåda med olika fält och knapparsom man kan använda när man bygger ett formulär:

(Video) Introduktion till MS Access

Databaser: Introduktion till Microsoft Access (33)

Du kan också visa en del ytterligare detaljer om formuläret Anställdagenom att högerklicka på formulärfönstrets namnlist,och välja Egenskaper i menyn som kommer fram:

Databaser: Introduktion till Microsoft Access (34)

En av de mer intressanta egenskaperna är datakällan,som anger från vilken tabell (eller fråga!) som Access ska hämta de data som visas i formuläret.I det här fallet hämtas data från tabellen Anställda:

Databaser: Introduktion till Microsoft Access (35)

Man kan ändra formulärets datakälla genom att klicka på den lilla nedåtpilenoch välja en annan tabell eller fråga:

Databaser: Introduktion till Microsoft Access (36)

Men få fungerar formuläret förmodligen inte längre,för kolumnerna i den tabellen eller frågeresultatet stämmer intemed vad formuläret förväntar sig:

Databaser: Introduktion till Microsoft Access (37)

Om man vill skapa ett nytt formulär kan man bygga upp det grafiskt i designläget.Det finns också flera olika guider för att snabbt skapa några vanliga typer av formulär.

Rapporter

Rapporter används för att ta fram pappersutskrifter med sammanställningar av databasens innehåll.Rapporter fyller delvis samma funktion som formulär, men på papper i stället för på skärmen,och (förstås) bara för listningar och sammanställningar, inte inmatning.

Gå tillbaka till databasfönstret och klicka på Rapporter i menyn till vänster:

Databaser: Introduktion till Microsoft Access (38)

Dubbelklicka på rapporten Kundetiketter för att öppna den i ett fönster.Nu visas rapporten som den kommer att se ut när man skriver ut den på papper.Det kallas att förhandsgranska rapporten.

Databaser: Introduktion till Microsoft Access (39)

Eftersom rapporten ska skrivas ut på papper med en skrivare,så beror det exakta utseendet på vilken skrivare man använder.Om man inte har någon skrivare installerad, kan man därför inte förhandsgranska rapporter:

Databaser: Introduktion till Microsoft Access (40)

För att skriva ut rapporten klickar du på Arkiv på menyraden i Access-fönstret,och väljer sen Skriv ut.Man kan också klicka på skrivarsymbolen (Databaser: Introduktion till Microsoft Access (41)).

Man kan också titta på rapportens design.Högerklicka på rapporten i databasfönstret,och välj Design i menyn som kommer fram.

Databaser: Introduktion till Microsoft Access (42)

Det här är designen av en enskild etikett. I utskriften av rapporten får vi flera etiketterbredvid varandra på varje sida, men det bestämmer vi under fliken Formati egenskapsfönstret (se nedan).

Det dyker också upp ett litet fönster med en verktygslåda med olika fält och knapparsom man kan använda när man bygger en rapport:

Databaser: Introduktion till Microsoft Access (43)

Du kan också visa en del ytterligare detaljer om rapporten Kundetikettergenom att högerklicka på rapportfönstrets namnlist,och välja Egenskaper i menyn som kommer fram.På samma sätt som för formulär så har vi en datakälla,som i det här fallet är tabellen Kunder:

Databaser: Introduktion till Microsoft Access (44)

Under fliken Format kan man titta på hur data ska formateraspå papperen vid utskriften, till exempel med sidhuvuden och sidfötter:

Databaser: Introduktion till Microsoft Access (45)

Man kan skapa en ny rapport genom att bygga upp den grafiskt i designläget.Det finns också flera olika guider för att snabbt skapa några vanliga typer av rapporter,till exempel diagram och etikettlistor.

Dataåtkomstsidor

I Access 2000 (men inte Access 97) kan man skapa webbsidor som är kopplade till en Access-databas.Dataåtkomstsidor fyller delvis samma funktion som formulär,nämligen att visa data snyggt på skärmen och låta användaren mata in och redigera uppgifter,men i en webbläsare i stället för i programmet Access.

De här dataåtkomstsidorna är inte vanliga webbsidor,som låter oss arbeta med data som finns centralt på en webbserver.Det går inte att arbeta med databasen via webben.Man måste ha direkt tillgång tillfilen som Access-databasen lagras i, antingen lokalt på datorn eller via ett nätverk.Dataåtkomstsidorna använder sig av särskilda Office-funktioner, som körs lokalt påsamma dator som webbläsaren, och som jobbar direkt mot databasfilen.För att de ska fungera måste användarenköra Windows, med Internet Explorer, och ha Microsoft Office installerat.Och, som sagt, kunna komma åt databasen som en vanlig fil.(Det är egentligen rätt naturligt, om man vet hur Access fungerar inuti:Access har ingen server som är igång hela tiden, och som webbläsaren skulle kunna prata med.)

(Video) Introduction to Database | Microsoft Access #shellyannjames #tables #microsoftaccess

Det går alltså inte att bygga databasbaserade webbplatsermed dataåtkomstsidor.Dataåtkomstsidorna är inte ett sätt att komma åt en databas via webben,utan ett sätt att bläddra i en lokal databas och visa dess innehålli Internet Explorer i stället för i Access.(Men det går att skapa "riktiga" webbsidor på annat sätt med Access.Läs mer om det i nästa stycke.)

Disclaimer:Det är vad jag förstått, utifrån dokumentationen och egna experiment.Jag har sett påståenden om att man trots allt kan göra dataåtkomstsidorsom faktiskt går att använda för att komma åt databasen via webben,men jag har inte lyckats,och jag har tolkat Microsofts egen dokumentation som att det inte går.

Gå tillbaka till databasfönstret och klicka på Sidor i menyn till vänster."Sidor" betyder dataåtkomstsidor.

Databaser: Introduktion till Microsoft Access (46)

Vi skapar en enkel dataåtkomstsida, som låter oss bläddra bland de anställda.Det gör vi genom att klicka på Ny i menylisten i databasfönstret,välja Sidguiden, och sen välja tabellen Anställda som datakälla.Sen markerar vi vilka av kolumnerna i den tabellen som vi vill ha med, och sparar sidan.Så här ser den ut när vi öppnar den i Internet Explorer:

Databaser: Introduktion till Microsoft Access (47)

Det går att bläddra bland de anställda, man kan ändra uppgifterna,och det går att lägga till och ta bort anställda.Men det fungerar alltså inte om man inte har själva databasfilen tillgänglig,och då kan man lika gärna göra det här som ett formulär, och arbeta i Accessi stället för i Internet Explorer.

Access och webben

Vi såg ovan att dataåtkomstsidor inte fungerar för att bygga databasbaserade webbplatser.Men man kan ändå skapa både statiska och dynamiska webbsidor med Access.
  • En statisk (dvs oföränderlig) webbsida skapar mangenom att exportera till exempel en tabell eller en rapport till webbformat.Markera det objekt som du vill exportera, och välj alternativet Exportera iArkiv-menyn. Välj filformatet HTML-dokument.Då skapas en webbsida som är en kopia av datat,som det ser ut just nu i databasen.Till exempel kan frågan Produkter dyrare än genomsnittetexporteras till en webbsida som ser utså här.Man kan välja mallar för att få olika utseende på webbsidan.Man kan titta på en sån exporterad webbsida med vilken webbläsare som helst,och man behöver inte ha själva Access-databasen tillgänglig.Men det är alltså en kopia av datat, och om innehållet i databasen ändras,så ändras inte den här exporterade webbsidan.Man kan inte heller mata in nya data i databasen via webbsidan.
  • Det går också att skapa dynamiska webbsidor.Active Server Pages (ASP) är en Microsoft-teknik för dynamiska webbsidor.ASP-sidor är en sorts små program som körs av en webbserver.När programmet körs, skapas den webbsida som ska skickas till användarens webbläsare.Man kan exportera saker från Access som ASP-sidor(filformatet Microsoft Active Server Pages)i stället för som vanliga HTML-sidor.Om man använder en webbserver som stöder ASP,till exempel en lämplig version av Microsofts egen Internet Information Server,så kan man sen använda de här ASP-sidorna för att arbeta med Access-databasen.Man ser de aktuella data som finns i databasen,och man kan också(disclaimer:enligt vad jag förstått)ändra och lägga in nya data i databasen.Webbservern kommer att användaODBCför att arbeta med databasen,så man måste ange en ODBC-datakälla som webbservern ska använda.Det här är alltså ett sätt att bygga en "riktig"databasbaserad webbplats,som använder sig av Access som databashanterare.

Men de sätt som finns i Access för att låta Access självskapa webbsidor (dataåtkomstsidor och export till HTML eller ASP)med hjälp av olika guider, är inte i första hand tänkta för att skapadatabasbaserade webbplatser i vanlig mening,utan de är mer tänkta för att manskall kunna erbjuda ett alternativ till ren Access på ett intranät.För att bygga databasbaserade webbplatser med en Access-databas i bottenvill man kanske hellre skriva egna ASP- eller CGI-sidor, som arbetar med Access-databas,eller använda något av de olika grafiska verktyg som finns för att skapa sådana webbsidor.

Makron

Makron är en sorts små programsnuttar som består av en följd instruktioner,som var och utför en viss operation, till exempel att öppna ett formuläreller skriva ut en rapport.

Gå tillbaka till databasfönstret och klicka på Makron i menyn till vänster:

Databaser: Introduktion till Microsoft Access (48)

Låt oss lite kort titta på makrot som heter Kundetiketter (dialogruta).Det används när man vill skriva ut kundetiketter.Det finns ett formulär med samma namn, Kundetiketter (dialogruta),och när man öppnar det så ser det ut så här:

Databaser: Introduktion till Microsoft Access (49)

I det här formuläret kan man välja vilka kunder man vill skriva ut etiketter för,baserat på land,och man kan förhandsgranska och skriva ut etiketterna.

När man skapar ett formulär kan man lägga in olika typer av fältsom visar data på olika sätt,och som man kan mata in data i,men för att göra mer avancerade sakermåste man koppla ett makro till formuläret.Utskriften av etiketter görs ju i en rapport (som beskrivs ovan),och är inte en del av formuläret.På något sätt måste man alltså koppla ihop formuläret med rätt rapport.Det görs i makrot Kundetiketter (dialogruta).

Titta på designen av makrot:

Databaser: Introduktion till Microsoft Access (50)

Makrot talar om vad som ska hända när man klickar påknapparna i formuläret (Granska, Skriv ut och Avbryt),och det ser också till att landsväljarrutanbara fungerar om man först klickar på Ett land:

Databaser: Introduktion till Microsoft Access (51)

Moduler

Ibland vill man göra mer avancerade saker i Access än vad som går att göra med makron.Då kan man skriva program i Microsofts älsklingsprogrammeringsspråk Visual Basic.Visual Basic finns nämligen med i Access, i en (begränsad)variant som heter Visual Basic for Applications.

En eller flera programsnuttar i Visual Basic for Applications,som man sparar tillsammans som en enhet i Access,kallas för en modul.Moduler kan vara kopplade till ett visst formulär eller rapport,och de kan också vara fristående.

Gå tillbaka till databasfönstret och klicka på Moduler i menyn till vänster:

Databaser: Introduktion till Microsoft Access (52)

Vi öppnar modulen Start i designlägetgenom att dubbelklicka på den,eller genom att högerklicka och välja Design.Modulen, med de ingående procedurerna, öppnas i ett eget Visual Basic-fönster:

Databaser: Introduktion till Microsoft Access (53)

Hjälp

Det finns en ganska bra hjälpfunktion i Access,med omfattande beskrivningar av vad saker är, hur de fungerar,och hur man använder dem. Klicka på hjälp-symbolen(Databaser: Introduktion till Microsoft Access (54))på menylisten. så kommer Office-assistenten fram,och låter dig söka i hjälpen:

Databaser: Introduktion till Microsoft Access (55)

Här är ett exempel på hur hjälpen ser ut,nämligen inledningen av introduktionen till moduler:

Databaser: Introduktion till Microsoft Access (56)

Fler finesser

En bra egenskap i Microsoft Access 2000 är att man kan länka till externa tabeller,det vill säga tabeller i en annan databas. Det kan vara en annan Access-databas,men också en databas som lagras i någon helt annan typ av databashanterare.Tabellerna dyker upp i Access, de ser ut som de tabeller som lagras i Access-databasen,och de kan användas i sökningar, men egentligen finns de alltså i en annan databas.

Klicka på Arkiv, Hämta externa data och Länka externa tabeller.Nu kan man välja mellan ett antal olika "filformat",bland dem ODBC-databaser.Där kan man alltså länka till tabeller i vilken databas som helst som kan nås via ODBC.Nästan alla relationsdatabashanterare har ODBC-stöd.

Med hjälp av dessa länkar kan man använda Access för enkel åtkomst,med ett lättanvänt användargränssnitt,till andra databaser.

(Video) Microsoft Access Tutorial: 7 Hours of Beginner to Advanced Training

Prestanda

Microsofts Access utmålas ofta som en "liten" databashanterare,vilket den ju också är jämfört med till exempelDB2,Oracle ellerSQL Server.Därför får jag ibland frågor om ifall Access klarar av lite större mängder data.Klarar den till exempel tusen rader i en tabell?Det gör den förstås.Tusen rader är väldigt lite i databassammanhang,och Access är ju faktiskt en databashanterare.

Bara för att testa la jag in en miljon rader i en tabell i Access 2000.Det tog fyra minuter att fylla tabellen från en textfil, men sengick den snabbt och enkelt att jobba med. Ska man lista hela miljonenposter tar det förstås en liten stund bara att mata fram dem,men till exempel att slå upp en post med ett visst värde i ett fältger ingen märkbar fördröjning alls, om man har ettindex på det fältet.När jag provade utan index tog det tre sekunder.

Kort om Access 97

Den version av Microsoft Access som ingår i Office 97 kallas Access 97.Det är inga större skillnader mellan Access 97 och Access 2000, som är den version som beskrivits här.Användargränssnittet i Access 2000 är snyggare och mer lättjobbat,men funktionaliteten är ungefär samma.En nyhet i Access 2000 ärdataåtkomstsidor,men jag tycker inte att de är särskilt användbara,utan de verkar mest vara till för att Microsoft skulle kunna använda ordet "webb" i reklamen.

Kort om Access 2002

Den version av Microsoft Access som ingår i Office XP kallas Access 2002.Två nyheter i Access 2002:
  • Man kan skapa en "Access-databas" med de vanliga verktygenför att skapa formulär, rapporter osv,men data sparas i en SQL Server-databas.
  • Det finns stöd för att importera och exportera data iXML-format.

FAQs

Is Microsoft Access becoming obsolete? ›

No! MS Access is still included in all business plans with Office 365. Access is a proven product that has been around for over 25 years and is the most widely used desktop, team and small/medium sized business database product.

What is Microsoft replacing Access with? ›

Microsoft Power Platform (Power Apps) Touted as Microsoft's replacement for Access, this suite of app development, business intelligence, and connectivity tools enables developers to create complicated applications for Web deployment through a coordinated suite of tools, such as Power BI, which operates as an ERP.

Which database model follows MS Access? ›

Access is a relational database management system. In a relational database, you divide your information into separate, subject-based tables. You then use table relationships to bring the information together as needed.

Does anyone actually use Microsoft Access? ›

Thousands of users and businesses continue to rely on Microsoft Access for their day-to-day operation.

Why do people not use Microsoft Access? ›

A security flaw is that it cannot safely authenticate people or organizations outside the company. MS Access is a desktop application and is therefore limited in terms of scalability and collaboration. Access is not as widely supported as other database platforms such as SQL Server, MySQL or Oracle.

Is there a better database than Access? ›

Other Microsoft Access Alternatives

You also have the option of using other free and open-source database options such as MySQL, PostgreSQL, MS SQL, SQLite, Cassandra, MariaDB, or one of the many others. These all represent resilient, powerful database tools suited to an extensive range of database tasks.

What is Microsoft Access called now? ›

Microsoft Access is now included as part of Microsoft 365 Family or Personal, Microsoft 365 Apps for business and Microsoft 365 Business Standard subscriptions.

What are the 4 types of database Access? ›

In Access, there are four main object types: tables, queries, forms, and reports.

Is Microsoft Access difficult to learn? ›

Microsoft Access is an easy-to-learn tool designed to create business applications. It also offers detailed design tools that allow you to create the most appealing programs. You can use Access' own templates or even make your own.

Do big companies use Access? ›

We have data on 124,372 companies that use Microsoft Access. The companies using Microsoft Access are most often found in United States and in the Information Technology and Services industry. Microsoft Access is most often used by companies with 50-200 employees and 1M-10M dollars in revenue.

Should I use Excel or Access? ›

In general, Access is better for managing data: helping you keep it organized, easy to search, and available to multiple simultaneous users. Excel is generally better for analyzing data: performing complex calculations, exploring possible outcomes, and producing high quality charts.

Why is Access a violation? ›

An access violation is a non-specific error that occurs while installing, loading, or playing a game. This error can be caused by the following: an interfering software program (usually an antivirus application), an outdated video card driver, or an outdated version of DirectX.

What is the disadvantage of MS Access? ›

MS Access is suitable only for small databases

In MS Access, all information is saved in one file which has a hard restriction – it cannot be larger than 2GB. Consequently, Access is not ideal for handling large databases with tens of thousands of rows and attached information like images or files.

Is Access more difficult than Excel? ›

Difficult to Learn: Access is more advanced than Excel and much more complicated to learn. To create complex applications using Access, some experience in database management systems and computer programming may be necessary.

Which database is best for beginners? ›

SQLite, a powerful Relational Database Management System (RDBMS), is also very easy to learn and to practice simple queries. It is very essential to become familiar with the basics of the most popular SQL Databases.

Should I use Access or SQL? ›

If your website database data is medium to large size, the right choice would be SQL Server. However, there are many instances where using Access makes more sense. If your data is smaller instead of medium or large, then using Microsoft Access would be the better choice, and using SQL Server would be overkill.

Does Microsoft Access use SQL? ›

Relational database programs, such as Microsoft Office Access, use SQL to work with data. Unlike many computer languages, SQL is not difficult to read and understand, even for a novice. Like many computer languages, SQL is an international standard that is recognized by standards bodies such as ISO and ANSI.

Is it worth to learn MS Access? ›

Why is it Worth Learning Microsoft Access? Microsoft Access is one of the world's top database management software. Many data analysts and application developers owe their careers to learning Microsoft Access.

Is MS Access the same as SQL? ›

Microsoft Access and Microsoft SQL Server are both database applications. The major difference between the two is in how the software is used. Microsoft Access is used in small business applications. Microsoft Access is also unable to handle large quantities of database queries.

What is Microsoft Access good for? ›

Microsoft Access enables business and enterprise users to manage data and analyze vast amounts of information efficiently. The program provides a blend of database functionality and programming capabilities for creating easy-to-navigate forms.

Does Microsoft have a database program? ›

If you use Microsoft 365 with SharePoint Online, data is stored in Microsoft Azure SQL Database.

Which database is mostly used? ›

As of August 2022, the most popular database management system (DBMS) in the world was Oracle, with a ranking score of 1260.8; MySQL and Microsoft SQL server rounded out the top three.

Is Excel considered a database? ›

Excel is not database — it is spreadsheet software. Even though many users try to force it to function like a database, its limitations in that regard are considerable. Starting with the most obvious, Excel is limited to 1M rows of data, while databases don't suffer from such restrictions.

Which database should I learn in 2022? ›

MySQL. MySQL is one of the most popular databases in 2022. It's open-source so any person or company can use MySQL for free, but if the code needs to be integrated into a commercial application, you need to purchase a license.

What are the five 5 major components of a database? ›

The five major components of a database are hardware, software, data, procedure, and database access language.

How to create a database? ›

To create a database

Right-click Databases, and then select New Database. In New Database, enter a database name. To create the database by accepting all default values, select OK; otherwise, continue with the following optional steps. To change the owner name, select (...) to select another owner.

Does MS Access require coding? ›

Your database can get complex if you add many macros or procedures to several event properties of many objects, but in most cases, you can achieve the results that you want by using very little programming.

How much time does it take to learn Access? ›

Average Time it Takes to Learn Microsoft Access

Noble Desktop's beginner Microsoft Access class lasts six hours and teaches the fundamentals of the program. The Microsoft Access Level II class lasts around the same amount of time and teaches advanced techniques.

Why is Access so popular? ›

Microsoft Access is an information management tool, or relational database, that helps you store information for reference, reporting and analysis. Access can also overcome the limitations found when trying to manage large amounts of information in Excel or other spreadsheet applications.

Is Microsoft Access powerful? ›

Excel and Access are two of the most powerful tools Microsoft uses for data analysis and report generation. However, there is some major difference among them. Excel is an old product of Microsoft, whereas access is Microsoft's newest advanced and complex product.

Do banks use Microsoft Access? ›

Microsoft Office is used widely across all areas of the banking and finance industry (Investment Banks but also Asset Management, Private Equity, Transaction Services, etc.)

Is Access actually excel? ›

Microsoft Access, from the Office suite, is an excellent general-purpose database management system made for storing and analysing data. Excel on the other hand is a spreadsheet package, with lots of extra features thrown in which allow you to do things like creating pivot tables for summarising data.

Is Access becoming obsolete? ›

No! MS Access is still included in all business plans with Office 365. Access is a proven product that has been around for over 25 years and is the most widely used desktop, team and small/medium sized business database product.

Is Microsoft Access end of life? ›

Is Microsoft Access going away? The current status is that Microsoft is fully committed to continuing development and support of Microsoft Access.

Should I use Access or MySQL? ›

MySQL is a popular open-source relational and embedded database, now owned by Oracle. Microsoft Access is better for novice users. It is very user-friendly and helps beginners learn data base rather than MySQL. MySQL is for more advanced users which have more experience.

Can SharePoint replace MS Access? ›

The SharePoint lists also support the concept of views which allow you to determine which fields to show, in which order, with sorting, filtering, and grouping options specific to that view. So can you use SharePoint to replace functions you used to do in Access? Absolutely.

Can PowerApps replace MS Access? ›

Microsoft Access can essentially provide the same functionality as PowerApps. Although, PowerApps is a cloud-based application and is therefore extremely secure. This means you can create custom apps and enter data without the worry of losing anything as it is all saved and backed up to the cloud.

What is Google's version of access? ›

Our visitors often compare Google Cloud Bigtable and Microsoft Access with MongoDB, PostgreSQL and MySQL. Google's NoSQL Big Data database service. It's the same database that powers many core Google services, including Search, Analytics, Maps, and Gmail.

Which is better MS Access or SQL? ›

Usability: Access is an excellent application for creating modest databases or for users who may not be familiar with technical language. SQL databases are much more technical but have far more capacity.

Is Microsoft Access better than MySQL? ›

As far as security goes, Access is much more limited. MySQL, as you've probably heard before, has different types of security, and can be configured with SSL support. Access has only username/password support for security.

Can I build a database in SharePoint? ›

Start Central Administration. On the SharePoint Central Administration website, click Application Management. In the Databases section, click Manage content databases. On the Manage Content Databases page, click Add a content database.

What is PowerApps not good for? ›

2. Not Compatible With External Systems. Power Apps offers seamless integration with Office 365 suite but it is not easy to integrate this low-code platform with legacy systems. Using Power Apps, users can connect to only a handful of third-party applications or services.

Is Access more powerful than Excel? ›

In general, Access is better for managing data: helping you keep it organized, easy to search, and available to multiple simultaneous users. Excel is generally better for analyzing data: performing complex calculations, exploring possible outcomes, and producing high quality charts.

Does Google have a database program? ›

Google Cloud databases provide you the best options in industry-leading reliability, global scale, and open standards for building data-driven applications.

Does Apple have a version of Access? ›

File Maker Pro. FileMaker is probably the best known database application for the Mac. It has a feature set comparable to Microsoft Access, but with a strong focus on forms (layouts) as the primary way of accessing databases. Similar to Access, FileMaker stores your database logic and all the data in a single file.

Videos

1. Introduction to Microsoft Access Part 1
(FastGadgets)
2. Access Database Introduction
(microsoft access tutorial)
3. Microsoft Access Asset Management Database Seminar Introduction
(Computer Learning Zone)
4. Access Beginner Tutorial
(Learnit Training)
5. Build a Microsoft Access Membership Database. Create Recurring Monthly Billing, Orders, Invoices.
(Computer Learning Zone)
6. Easy Access POS - Introduction to my Point of Sale System database built with Microsoft Access
(Computer Learning Zone)
Top Articles
Latest Posts
Article information

Author: Van Hayes

Last Updated: 02/15/2023

Views: 5823

Rating: 4.6 / 5 (46 voted)

Reviews: 85% of readers found this page helpful

Author information

Name: Van Hayes

Birthday: 1994-06-07

Address: 2004 Kling Rapid, New Destiny, MT 64658-2367

Phone: +512425013758

Job: National Farming Director

Hobby: Reading, Polo, Genealogy, amateur radio, Scouting, Stand-up comedy, Cryptography

Introduction: My name is Van Hayes, I am a thankful, friendly, smiling, calm, powerful, fine, enthusiastic person who loves writing and wants to share my knowledge and understanding with you.