Använda relationer

Komma igång med tabellrelationer

Din webbläsare har inte stöd för video. Installera Microsoft Silverlight, Adobe Flash Player eller Internet Explorer 9.

En relationsdatabas är kraftfull för att den kan kombinera data från olika tabeller. För att göra det måste du först skapa relationer mellan dina tabeller. Sedan kan du låta Access kombinera data i frågor, formulär och rapporter.

För att se alla befintliga relationer som är definierade för en databas, öppnar du en databasmall och går sedan till fliken Databasverktyg och väljer Relationer.

Obs!: Om du öppnar en tom databas eller inte definierat några relationer, uppmanar Access dig att lägga till en tabell eller fråga. Innan du kan lägga till en relation behöver du minst två tabeller. Det bästa är att skapa alla tabeller först. Mer information finns i Skapa relationer med Uppslagsguiden och Skapa relationer med fönstret Relationer.

Förstå relationsvyn

Linjerna i relationsvyn anger anslutningar mellan tabellerna. I denna bild är tabellen till vänster den överordnade tabellen. Tabellen till höger är den underliggande tabellen. Linjen mellan dem ansluter fälten (i detta fall Order-ID och Produkt-ID) som används för att matcha data.

Relationer visas som linjer mellan överordnade och underordnade fält.

Linjer och symboler visar tabellernas relationer med varandra:

  • En tjock anslutande linje anger att referensintegritet upprätthålls. Det är bra. Det ser till att dina data är synkroniserade.

  • I vårt exempel anger siffran 1 att det bara kan finnas en matchande post i den tabellen. I tabellen Order som visas här är det bara en post som matchar.

  • Symbolen ∞ anger att många poster kan innehålla samma ID. I tabellen Orderinformation som visas här, kan en order (identifierad med sitt Order-ID) finnas med flera gånger eftersom samma order kan innehålla flera produkter.

Typer av relationer mellan tabeller

Det finns tre typer av relationer mellan tabeller:

  • 1:1. När varje objekt bara förekommer en gång i varje tabell. Exempelvis kan varje anställd bara köra en företagsbil. Mer information finns i Skapa 1:1-relationer.

  • 1:N. När ett objekt i en tabell kan ha en relation till flera objekt i en annan tabell. Exempelvis kan varje inköpsorder ha flera produkter.

  • Många-till-många. När ett eller flera objekt i en tabell kan ha en relation till ett eller flera objekt i en annan tabell. Exempelvis kan varje order ha flera produkter och varje produkt kan finnas med i flera order. Mer information finns i Skapa många-till-många-relationer.

1:n-relationer

En av de vanligaste relationerna mellan tabeller i väl utformade databaser är 1:N-relationen.

Relationer mellan tabeller använder normalt primärnyckeln i en av tabellerna. Kom ihåg att primärnyckeln är en unik identifierare (ofta numerisk) för varje post. För att visa att informationen i två olika tabeller hör samman, skapar du normalt en relation med primärnyckeln från en av tabellerna.

I den relation som visas här har varje person i tabellen Kontakter ett ID, som är primärnyckeln (anges av nyckelsymbolen som visas intill). Detta ID finns även i fältet Ägare i tabellen Tillgångar. För att skicka e-post till personen som ansvarar för en tillgång, hämtar du värdet från fältet E-postadress. För att göra det letar du upp värdet i fältet Ägare i tabellen Tillgångar och söker sedan efter detta ID i tabellen Kontakter. Siffran 1 i slutet av den anslutande linjen och symbolen ∞ i andra änden anger att detta är en 1:N-relation, så en kontakt kan vara kopplad till flera tillgångar.

1:N-relation

Redigera en relation

Om du modifierar en befintlig databas eller skapar din databas från en mall, kan du ändra relationerna så att de passar dina behov.

Obs!: Om de tabeller du vill arbeta med används måste du först stänga dem och alla andra öppna objekt som använder dem.

  1. Välj Databasverktyg > Relationer.

  2. Markera linjen som förbinder två tabeller.

    Tips: Om du inte ser den relation du vill använda väljer du Alla relationer i gruppen Relationer på fliken Design.

  3. På fliken Design väljer du Redigera relationer.

    Redigera en befintlig relation mellan tabeller

    Tabell/fråga är den överordnade tabellen till vänster (i detta exempel Kunder).

    Relaterad tabell/fråga är den underordnade tabellen (i detta exempel Order).

    Även om tabellerna inte visas i denna ordning i relationsvyn, anger deras placering i dialogrutan riktningen på linjen som förbinder dem samt relationen. Det är viktigt om det exempelvis är en 1:N-relation, eftersom det anger att tabellen till vänster är Ett (överordnad tabell) och tabellen till höger är N (många) (den underordnade tabellen).

  4. För att ändra fälten som förbinder tabellerna väljer du ett annat fält under varje tabell som visas. I detta exempel ansluter ID-fältet i tabellen Kunder till fältet Kund-ID i tabellen Order.

  5. Ändra det sätt som Access synkroniserar data mellan tabeller.

    Referensintegritet

    Välj detta för att hindra uppkomsten av ogiltiga data och hålla referenser synkroniserade över tabellrelationer.

    Anta att du har en 1:1-relation mellan tabellerna Anställda och Anställningsförmåner. Om en anställd lämnar företaget och du tar bort dem från tabellen Anställda, tas motsvarande post för den anställde även bort i tabellen Anställningsförmåner.

    Ibland är referensintegritet olämpligt. Anta att du har en 1:N-relation mellan Speditörer och Order. Du tar bort en speditör, och den speditören är kopplad till order i tabellen Order. Dessa order blir överblivna order, vilket innebär att de fortfarande innehåller ett Speditör-ID, men detta ID är inte längre giltigt eftersom posten som den refererar till inte längre finns.

    Uppdatera poster i relaterade tabeller

    Markera detta för att se till att data i relaterade fält uppdateras i alla relaterade tabeller.

    Anta att du vill byta ID för en speditör. Med denna inställning ser du till att Speditör-ID uppdateras – inte bara i tabellen Speditör, utan även i alla andra tabeller som är anslutna till den och som också innehåller detta Speditör-ID, exempelvis tabellen Order.

    Ta bort poster i relaterade tabeller

    Beslutet att markera detta beror på om du behöver behålla poster i vissa tabeller även om de kan ha tagits bort från andra tabeller.

    Anta att du tar bort en speditör. Om detta alternativ är markerat, tar Access bort alla poster i alla tabeller som refererar till detta Speditör-ID, inklusive alla order (i tabellen Order) som levererats av den speditören. Du väljer bara detta alternativ om du är säker på att du vill ta bort din orderhistorik.

  6. För att ändra relationen mellan tabellerna från en inre koppling till en yttre koppling, väljer du knappen Kopplingstyp. Mer information finns i Skapa frågor med yttre kopplingar.

Ta bort en tabellrelation

Obs!: Om de tabeller du vill arbeta med används måste du först stänga dem och alla andra öppna objekt som använder dem.

Ta bort en tabellrelation:

  1. Välj Databasverktyg > Relationer.

  2. Markera linjen som förbinder de två tabellerna.

    Tips: Om du inte ser den relation du vill använda väljer du Alla relationer i gruppen Relationer på fliken Design.

  3. Tryck på Delete-tangenten. Om du uppmanas att bekräfta att du vill ta bort relationen väljer du Ja.

Obs!: När du tar bort en relation, tar du även bort stödet för referensintegritet för relationen, om detta finns. Access kommer därför inte längre att förhindra ändringar som kan leda till överblivna poster på många-sidan av en 1:N-relation.

Vill du veta mer?

Skapa en relation

Ta bort en relation

Excel-utbildning

Outlook-utbildning

Du skapar relationer mellan tabellerna i databasen. Relationer är nödvändiga eftersom de länkar tabellerna till varandra sedan du delat upp dina data, men också för att de påverkar hur du utformar dina frågor och hämtar svar från dina data.

En relationsdatabas använder tre typer av relationer mellan tabeller. 1:n, n:n och 1:1.

Relationerna du använder beror på dina data. Du har en 1:n-relation när en enskild post i en tabell är relaterad till en eller flera poster i en annan tabell.

Vår exempeldatabas innehåller den typen av relation. En kund kan ha ett eller flera telefonnummer och varje telefonnummer är bara kopplat till en kund.

Du har en n:n-relation när en enskild post i tabell A kan vara relaterad till en eller flera poster i tabell B och en enskild post i tabell B kan vara relaterad till en eller flera poster i tabell A.

Relationer av typen n:n finns ofta i databaser för orderhantering, där en beställning kan innehålla många produkter och en produkt kan ingå i flera beställningar.

Den här typen av relation förekommer även i studentdatabaser, där många studenter kan vistas i många klassrum.

Du har en 1:1-relation när en enskild post i en tabell är relaterad till en enda post i en annan tabell. En medarbetare kan till exempel ha en företagsbil. Du stöter inte på en sådan relation särskilt ofta eftersom 1:1-relationer är rätt ovanliga.

Välj Databasverktyg och sedan Relationer. Fönstret Relationer öppnas. Vi kommer att använda detta verktyg en hel del.

Det är här du skapar och hanterar de flesta av dina relationer. Här visas en typisk relation: två tabeller med en linje mellan dem. Linjen visar att tabellerna är relaterade.

Dessutom är det här en 1:n-relation. Du ser det eftersom relationslinjen är försedd med en ETTA och symbolen för OÄNDLIGHET. Detta visar på ett par viktiga begrepp.

Tabellen som betecknas med ETT är den ÖVERORDNADE tabellen och tabellen på N-sidan är en UNDERORDNAD tabell.

Du kan se det som att de flesta av relationerna har SIDOR. I det här fallet har du en tabell på sidan ETT och en tabell på sidan N.

Sidor är viktiga eftersom de påverkar hur du utformar dina frågor.

Vi markerar relationslinjen och väljer Redigera relationer i menyfliksområdet.

Det finns tre inställningar som påverkar dina data och hjälper dig att använda relationer på rätt sätt: Referensintegritet, sammanhängande uppdateringar och sammanhängande borttagningar. De fungerar så här.

Referensintegritet synkroniserar posterna i båda tabellerna. Det här är viktigt för att dina data ska vara korrekta, så du bör som regel aktivera denna inställning.

Om du aktiverat referensintegritet kan du inte lägga till ett telefonnummer om du inte har ett namn i tabellen Kunder. Det förhindrar att så kallade ENSTAKA RADER, data utan överordnade poster, uppstår.

Föreställ dig en fakturasumma utan koppling till en beställning, så förstår du varför referensintegritet är så viktig.

Inställningen för sammanhängande uppdateringar gör att ändringar på den överordnade sidan förmedlas till alla relaterade poster på den UNDERORDNADE eller N-sidan.

Om en kund till exempel ändrar sitt namn behöver du bara uppdatera tabellen Kunder för att alla relaterade poster ska ändras.

Inställningen för sammanhängande borttagningar avgör om du kan ta bort data. Om du inte markerar det här alternativet kan du inte ta bort data. Om du markerar det här alternativet kommer Access att ta bort allt som är relaterat till posten du raderar.

Om du tar bort en kund kommer även kundens telefonnummer att tas bort.

Detta är bra eftersom det förhindrar enstaka rader – telefonnummer som inte hör till en kund. Å andra sidan kan det finnas affärsregler som förbjuder dig att ta bort data, så ha det i åtanke. Affärsregler kan ha stor betydelse för hur du utformar databasen.

Nu vet du mer om tabellrelationer, hur du använder fönstret Relationer i Access och hur inställningarna för relationer hjälper dig att använda din Access-databas mer effektivt.

Utöka dina kunskaper
Utforska utbildning
Få nya funktioner först
Anslut till Office Insiders

Hade du nytta av den här informationen?

Tack för din feedback!

Tack för din feedback! Det låter som att det kan vara bra att koppla dig till en av våra Office-supportrepresentanter.

×