Skapa, redigera och ta bort en relation

När du har skapat en tabell för varje subjekt i databasen, måste du förse Office Access 2007 med de verktyg som kan sammanföra informationen igen när det behövs. Det gör du genom att placera gemensamma fält i tabeller som är relaterade, och genom att definiera relationer mellan tabellerna. Du kan sedan skapa frågor, formulär och rapporter som visar information från flera tabeller samtidigt.

I den här artikeln finns steg-för-steg-anvisningar för hur du skapar, redigerar och tar bort en tabellrelation. Du får lära dig att använda referensintegritet som förhindrar att överblivna poster skapas, att ange kopplingstyp som bestämmer vilka poster från vardera sidan av en relation som ska ingå i frågeresultatet samt att ange kaskadalternativ som synkroniserar referenser.

Mer information om tabellrelationer finns i artikeln Guide till tabellrelationer.

I den här artikeln

Skapa en tabellrelation

Skapa en tabellrelation på dokumentfliken Relationer

Skapa en tabellrelation i fönstret Fältlista

Redigera en tabellrelation

Använda referensintegritet

Ta bort en tabellrelation

Skapa en tabellrelation

Du kan skapa en tabellrelation i fönstret Relationer eller genom att dra ett fält till ett datablad från fönstret Fältlista. När du skapar en relation mellan tabeller, behöver de gemensamma fälten inte ha samma namn, även om så ofta är fallet. Däremot måste de gemensamma fälten ha samma datatyp. Om primärnyckelfältet är ett Räknare-fält kan däremot sekundärnyckelfältet också vara ett talfält om egenskapen Fältstorlek för båda fälten är densamma. Du kan exempelvis matcha ett Räknare-fält med ett talfält om egenskapen Fältstorlek i båda fälten är Långt heltal. Om båda de gemensamma fälten är talfält måste de ha samma inställningar för egenskapen Fältstorlek.

Överst på sidan

Skapa en tabellrelation på dokumentfliken Relationer

  1. Klicka först på Microsoft Office-knappen Bild av Office-knappen och sedan på Öppna.

  2. Välj och öppna databasen i dialogrutan Öppna.

  3. Klicka på Relationer i gruppen Visa/dölj på fliken Databasverktyg.

    Bild av menyfliksområdet i Access

  4. Om du ännu inte har definierat några relationer visas dialogrutan Visa tabell automatiskt. Om den inte visas klickar du på Visa tabell i gruppen Relationer på fliken Design.

    Fliken för menyfliksområdesdesign, gruppen Relationer

    Dialogrutan Visa tabell innehåller alla tabeller och frågor i databasen. Om du bara vill visa tabeller klickar du på Tabeller. Om du bara vill visa frågor klickar du på Frågor. Om du vill visa båda klickar du på Båda.

  5. Markera en eller flera tabeller eller frågor och klicka på Lägg till. När du har lagt till tabellerna och frågorna på dokumentfliken Relationer klickar du på Stäng.

  6. Dra ett fält (oftast primärnyckeln) från den ena tabellen till det gemensamma fältet (sekundärnyckeln) i den andra tabellen. Om du vill dra flera fält trycker du på CTRL och klickar på varje fält innan du drar dem.

    Dialogrutan Redigera relationer öppnas.

    Dialogrutan Redigera relationer

  7. Kontrollera att de fältnamn som visas gäller för de gemensamma fälten i relationen. Om ett fältnamn är fel, klickar du på det och väljer rätt fält i listan.

    Om du vill använda referensintegritet för den här relationen markerar du kryssrutan Referensintegritet. Mer information om referensintegritet finns i avsnittet Använda referensintegritet.

    Du kan också läsa artikeln Guide till tabellrelationer.

  8. Klicka på Skapa.

    En relationslinje ritas mellan de två tabellerna. Om du markerade kryssrutan Referensintegritet är linjen bredare i vardera änden. Om du har markerat kryssrutan Referensintegritet visas också siffran 1 ovanför den bredare delen i ena änden av relationslinjen och oändlighetssymbolen () ovanför den bredare delen i den andra änden, på det sätt som visas i bilden nedan.

Dra ett fält från en tabell till motsvarande fält i en annan tabell

Meddelanden: 

  • Skapa en 1:1-relation    Båda de gemensamma fälten (vanligtvis primärnyckel- och sekundärnyckelfälten) måste ha unika index. Det innebär att egenskapen Indexerad för dessa fält ska anges till Ja (inga dubbletter). Om båda fälten har unika index skapas en 1:1-relation.

  • Skapa en 1:N-relation    Fältet på den ena sidan (vanligtvis primärnyckeln) i relationen måste ha ett unikt index. Det innebär att egenskapen Indexerad för det här fältet ska anges till Ja (inga dubbletter). Fältet på en andra sidan ska inte ha något unikt index. Det kan ha ett index, men du måste tillåta dubbletter. Det innebär att egenskapen Indexerad för det här fältet ska anges till Nej eller Ja (dubbletter tillåtna). När ett fält har ett unikt index, och det andra inte, skapas en 1:N-relation.

Överst på sidan

Skapa en tabellrelation i fönstret Fältlista

I Office Access 2007 kan du lägga till ett fält i en befintlig tabell som är öppen i databladsvyn genom att dra det från fönstret Fältlista. I Fältlista visas tillgängliga fält i relaterade tabeller och även fält som är tillgängliga i andra tabeller i databasen. När du drar ett fält från en "annan" (orelaterad) tabell och sedan går igenom Uppslagsguiden skapas en ny 1:N-relation automatiskt mellan tabellen i fönstret Fältlista och tabellen som du drar fältet till. Den här relationen, som skapas automatiskt, använder inte referensintegritet som standard. Om du vill använda referensintegritet måste du redigera relationen. Mer information finns i avsnittet Redigera en tabellrelation.

Öppna en tabell i databladsvyn

  1. Klicka först på Microsoft Office-knappen Bild av Office-knappen och sedan på Öppna.

  2. Välj och öppna databasen i dialogrutan Öppna.

  3. Högerklicka i navigeringsfönstret på tabellen där du vill lägga till fältet och skapa relationen, och klicka sedan på Databladsvy på snabbmenyn.

Öppna fönstret Fältlista

  • Klicka på Lägg till befintliga fält i gruppen Fält och kolumner på fliken Datablad.

    Bild av menyfliksområdet i Access

    Fönstret Fältlista visas.

    Fönstret Fältlista

Fönstret Fältlista innehåller alla andra tabeller i databasen, grupperade i kategorier. När du arbetar med en tabell i databladsvyn visas fälten i en av de två kategorierna i fönstret Fältlista: Tillgängliga fält i relaterade tabeller och Tillgängliga fält i andra tabeller. Den första kategorin innehåller alla tabeller som har en relation till den tabell som du arbetar med. Den andra kategorin innehåller alla tabeller som tabellen inte har någon relation till.

När du klickar på plustecknet (+) bredvid ett tabellnamn i åtgärdsfönstret Fältlista visas en lista med alla fält som är tillgängliga i den tabellen. Du lägger till ett fält i tabellen genom att dra önskat fält från fönstret Fältlista till tabellen i databladsvyn.

Lägga till ett fält och skapa en relation i fönstret Fältlista

  1. Klicka på Lägg till befintliga fält i gruppen Fält och kolumner på fliken Datablad.

    Bild av menyfliksområdet i Access

    Fönstret Fältlista visas.

  2. Klicka på plustecknet (+) bredvid ett tabellnamn under Tillgängliga fält i andra tabeller om du vill visa listan med fält i den tabellen.

  3. Dra önskat fält från fönstret Fältlista till tabellen som är öppen i databladsvyn.

  4. När insättningsraden visas släpper du fältet på rätt plats.

    Uppslagsguiden startar.

  5. Följ anvisningarna i Uppslagsguiden.

    Fältet visas i databladsvyn.

När du drar ett fält från en "annan" (orelaterad) tabell och sedan går igenom Uppslagsguiden skapas en ny 1:N-relation automatiskt mellan tabellen i fönstret Fältlista och tabellen som du drar fältet till. Den här relationen, som skapas automatiskt, använder inte referensintegritet som standard. Om du vill använda referensintegritet måste du redigera relationen. Mer information finns i avsnittet Redigera en tabellrelation.

Överst på sidan

Redigera en tabellrelation

Du ändrar en tabellrelation genom att markera den på dokumentfliken Relationer och sedan redigera den.

  1. Se till att markören pekar på relationslinjen och klicka sedan på linjen så att den markeras.

    Relationslinjen blir bredare när den markeras.

  2. Dubbelklicka på relationslinjen medan den är markerad.

    - eller -

    Klicka på Redigera relationer i gruppen Verktyg på fliken Design.

Dialogrutan Redigera relationer visas.

Öppna dialogrutan Redigera relationer

  1. Klicka först på Microsoft Office-knappen Bild av Office-knappen och sedan på Öppna.

  2. Välj och öppna databasen i dialogrutan Öppna.

  3. Klicka på Relationer i gruppen Visa/dölj på fliken Databasverktyg.

    Dokumentfliken Relationer visas.

    Om du ännu inte har definierat några relationer, och det är första gången som du öppnar dokumentfliken Relationer, visas dialogrutan Visa tabell. Om dialogrutan visas klickar du på Stäng.

  4. Klicka på Alla relationer i gruppen Relation på fliken Design.

    Fliken för menyfliksområdesdesign, gruppen Relationer

    Alla tabeller med relationer visas tillsammans med relationslinjerna. Observera att dolda tabeller (tabeller där kryssrutan Dold är markerad i dialogrutan Egenskaper för tabellen) och deras relationer inte visas såvida inte Visa dolda objekt är markerat i dialogrutan Navigeringsalternativ.

    Mer information om alternativet Visa dolda objekt finns i artikeln Guide till navigeringsfönstret.

  5. Klicka på relationslinjen för den relation som du vill ändra. Relationslinjen blir bredare när den markeras.

  6. Dubbelklicka på relationslinjen.

    - eller -

    Klicka på Redigera relationer i gruppen Verktyg på fliken Design.

    Dialogrutan Redigera relationer öppnas.

    Dialogrutan Redigera relationer

  7. Gör ändringarna och klicka på OK.

    I dialogrutan Redigera relationer kan du ändra en tabellrelation. Du kan ändra tabellerna eller frågorna på vardera sidan om relationen, eller fälten på vardera sidan. Du kan också ange kopplingstyp, använda referensintegritet och välja kaskadalternativ. Mer information om kopplingstyper och hur du anger dem finns i avsnittet Ange kopplingstyp. Mer information om hur du använder referensintegritet och hur du väljer ett kaskadalternativ finns i avsnittet Använda referensintegritet.

Ange kopplingstyp

När du definierar en tabellrelation skickas uppgifter om relationen till frågans design. Om du till exempel definierar en relation mellan två tabeller, och sedan skapar en fråga som använder de två tabellerna, väljs matchande fält automatiskt utifrån vilka fält som anges i relationen. Du kan åsidosätta dessa standardvärden i frågan, men värdena som anges i relationen är oftast de bästa. Eftersom du ofta kommer att matcha och sammanföra data från flera tabeller i alla utom de enklaste databaserna kan det spara tid att använda standardvärdena från relationerna.

I en tabell med flera frågor kombineras information från flera tabeller genom att värdena i de gemensamma fälten matchas. Åtgärden som matchar och kombinerar kallas för en koppling. Anta att du vill visa kundorder. Du skapar då en fråga som kopplar tabellen Kunder och tabellen Order via fältet Kundnr. Frågeresultatet innehåller kundinformation och orderinformation för enbart de rader där motsvarande matchning finns.

Ett av värdena som du kan ange för varje relation är kopplingstypen. Kopplingstypen anger vilka poster som ska tas med i frågeresultatet. Tänk dig en fråga som kopplar tabellen Kunder och tabellen Order via det gemensamma fält som representerar Kundnummer. Om du använder standardkopplingstypen (en så kallad inre koppling), returnerar frågan bara de kundrader och orderrader där de gemensamma fälten (de så kallade kopplingsfälten) är desamma.

Anta att du vill ta med alla kunder – även dem som ännu inte har gjort några beställningar. För att kunna göra det måste du ändra kopplingstypen från inre koppling till vad som kallas en vänster yttre koppling. En vänster yttre koppling returnerar alla rader i tabellen på vänster sida av relationen och bara de som matchar i tabellen till höger. En högre yttre koppling returnerar all rader till höger och enbart de som matchar till vänster.

Obs!: I det här fallet syftar "vänster" och "höger" på tabellernas placering i dialogrutan Redigera relationer, inte på dokumentfliken Relationer.

Fundera igenom vilket resultat som du oftast vill ha av frågan som kopplar ihop tabellerna i relationen, och ange sedan en lämplig kopplingstyp.

Ange kopplingstyp

  1. Klicka på Kopplingstyp i dialogrutan Redigera relationer.

    Dialogrutan Kopplingsegenskaper visas.

  2. Klicka på ett alternativ och sedan på OK.

I tabellen nedan (med tabellerna Kunder och Order) visas de tre alternativen i dialogrutan Kopplingsegenskaper och den typ av koppling som de använder om alla rader eller matchande rader returneras för varje tabell.

Alternativ

Relationskoppling

Vänster tabell

Höger tabell

1. Använd bara poster där de kopplade fälten från båda tabellerna är lika.

Inre koppling

Matchande rader

Matchande rader

2. Ta med ALLA poster från Kunder och de poster från Order där de kopplade fälten är lika.

Vänster yttre koppling

Alla rader

Matchande rader

3. Ta med ALLA poster från Order och de poster från Kunder där de kopplade fälten är lika.

Höger yttre koppling

Matchande rader

Alla rader

Om du väljer alternativ 2 eller 3 visas en pil på relationslinjen. Den här pilen pekar mot den sida av relationen som bara visar matchande rader.

Gör ändringarna i dialogrutan Kopplingsegenskaper

  1. Klicka först på Microsoft Office-knappen Bild av Office-knappen och sedan på Öppna.

  2. Välj och öppna databasen i dialogrutan Öppna.

  3. Klicka på Relationer i gruppen Visa/dölj på fliken Databasverktyg.

    Bild av menyfliksområdet i Access

    Dokumentfliken Relationer visas.

    Om du ännu inte har definierat några relationer, och det är första gången som du öppnar dokumentfliken Relationer, visas dialogrutan Visa tabell. Om dialogrutan visas klickar du på Stäng.

  4. Klicka på Alla relationer i gruppen Relation på fliken Design.

    Fliken för menyfliksområdesdesign, gruppen Relationer

    Alla tabeller med relationer visas tillsammans med relationslinjerna. Observera att dolda tabeller (tabeller där kryssrutan Dold är markerad i dialogrutan Egenskaper för tabellen) och deras relationer inte visas såvida inte Visa dolda objekt är markerat i dialogrutan Navigeringsalternativ.

    Mer information om alternativet Visa dolda objekt finns i artikeln Guide till navigeringsfönstret.

  5. Klicka på relationslinjen för den relation som du vill ändra. Relationslinjen blir bredare när den markeras.

  6. Dubbelklicka på relationslinjen.

    - eller -

    Klicka på Redigera relationer i gruppen Verktyg på fliken Design.

    Dialogrutan Redigera relationer öppnas.

  7. Klicka på Kopplingstyp

  8. Klicka på ett alternativ i dialogrutan Kopplingsegenskaper och klicka sedan på OK.

    Dialogrutan Kopplingsegenskaper

  9. Gör fler ändringar i relationen om du vill och klicka på OK.

Överst på sidan

Använda referensintegritet

Syftet med referensintegritet är att förhindra att överblivna poster skapas och att synkronisera referenser, så att det inte finns poster som refererar till poster som inte längre finns. Du använder referensintegritet genom att aktivera det för en tabellrelation. När det används går det inte att utföra några åtgärder som bryter mot referensintegriteten för den tabellrelationen. Det innebär att du varken kan utföra uppdateringar som ändrar målet i en referens eller ta bort målet för en referens. Om du vill att uppdateringar och borttagningar av referenser ska spridas så att alla relaterade rader ändras på rätt sätt läser du avsnittet Ange kaskadalternativ.

Aktivera och inaktivera referensintegritet

  1. Klicka först på Microsoft Office-knappen Bild av Office-knappen och sedan på Öppna.

  2. Välj och öppna databasen i dialogrutan Öppna.

  3. Klicka på Relationer i gruppen Visa/dölj på fliken Databasverktyg.

    Bild av menyfliksområdet i Access

    Dokumentfliken Relationer visas.

    Om du ännu inte har definierat några relationer, och det är första gången som du öppnar dokumentfliken Relationer, visas dialogrutan Visa tabell. Om dialogrutan visas klickar du på Stäng.

  4. Klicka på Alla relationer i gruppen Relation på fliken Design.

    Alla tabeller med relationer visas tillsammans med relationslinjerna. Observera att dolda tabeller (tabeller där kryssrutan Dold är markerad i dialogrutan Egenskaper för tabellen) och deras relationer inte visas såvida inte Visa dolda objekt är markerat i dialogrutan Navigeringsalternativ.

    Mer information om alternativet Visa dolda objekt finns i artikeln Guide till navigeringsfönstret.

  5. Klicka på relationslinjen för den relation som du vill ändra. Relationslinjen blir bredare när den markeras.

  6. Dubbelklicka på relationslinjen.

    - eller -

    Klicka på Redigera relationer i gruppen Verktyg på fliken Design.

    Dialogrutan Redigera relationer visas.

  7. Markera Referensintegritet.

  8. Gör fler ändringar i relationen om du vill och klicka på OK.

När du använder referensintegritet gäller följande regler:

  • Du kan inte registrera ett värde i sekundärnyckelfältet för en relaterad tabell om värdet inte finns i primärnyckelfältet för den primära tabellen – då skapas överblivna poster.

  • Du kan inte ta bort ett element från en primärtabell om matchande poster finns i en relaterad tabell. Du kan till exempel inte ta bort en anställd från tabellen Anställda om det finns en order kopplad till den anställda i tabellen Order. Du kan emellertid välja att ta bort en primär post och alla relaterade poster i en enda åtgärd genom att markera kryssrutan Ta bort poster i relaterade tabeller.

  • Du kan inte ändra primärnyckelns värde i primärtabellen om det medför att överblivna poster skapas. Du kan till exempel inte ändra ett ordernummer i tabellen Order om det finns radelement kopplade till den ordern i tabellen Orderdetaljer. Du kan däremot uppdatera en primär post och alla relaterade poster i en enda åtgärd genom att markera kryssrutan Uppdatera poster i relaterade tabeller.

    Meddelanden: Följande villkor måste uppfyllas för att det ska gå att använda referensintegritet, annars kan problem uppstå:

    • De gemensamma fälten från primärtabellen måste antingen vara en primärnyckel eller ha ett unikt index.

    • De gemensamma fälten måste ha samma datatyp. Det enda undantaget är att ett Räknare-fält kan vara relaterat till ett talfält som har egenskapen Fältstorlek inställd på Långt heltal.

    • Båda tabellerna måste finnas i samma Access-databas. Referensintegritet kan inte användas på länkade tabeller. Om källtabellerna är i Access-format kan du däremot öppna databasen där de lagras och aktivera referensintegritet i den databasen.

Ange kaskadalternativ

Ibland kanske du ändå måste ändra värdet på 1-sidan av en relation. I så fall måste alla rader som påverkas uppdateras automatiskt i en enda åtgärd. På så sätt sker uppdateringen i sin helhet så att databasen inte blir inkonsekvent – så att vissa rader är uppdaterade och andra inte. Du undviker det här problemet med hjälp av alternativet Uppdatera poster i relaterade tabeller. När du använder referensintegritet och väljer alternativet Uppdatera poster i relaterade tabeller, och sedan uppdaterar en primärnyckel, uppdateras alla fält som refererar till primärnyckeln automatiskt.

Du kanske också måste ta bort en rad och alla relaterade poster – till exempel posten Speditör och alla relaterade order för den speditören. Därför finns också alternativet Ta bort poster i relaterade tabeller. När du använder referensintegritet och markerar kryssrutan Ta bort poster i relaterade tabeller tas alla poster som refererar till primärnyckeln bort automatiskt när du tar bort en post som innehåller primärnyckeln.

Aktivera och inaktivera kaskaduppdatering och/eller kaskadborttagning

  1. Klicka först på Microsoft Office-knappen Bild av Office-knappen och sedan på Öppna.

  2. Välj och öppna databasen i dialogrutan Öppna.

  3. Klicka på Relationer i gruppen Visa/dölj på fliken Databasverktyg.

    Bild av menyfliksområdet i Access

    Dokumentfliken Relationer visas.

    Om du ännu inte har definierat några relationer, och det är första gången som du öppnar dokumentfliken Relationer, visas dialogrutan Visa tabell. Om dialogrutan visas klickar du på Stäng.

  4. Klicka på Alla relationer i gruppen Relation på fliken Design.

    Alla tabeller med relationer visas tillsammans med relationslinjerna. Observera att dolda tabeller (tabeller där kryssrutan Dold är markerad i dialogrutan Egenskaper för tabellen) och deras relationer inte visas såvida inte Visa dolda objekt är markerat i dialogrutan Navigeringsalternativ.

    Mer information om alternativet Visa dolda objekt finns i artikeln Guide till navigeringsfönstret.

  5. Klicka på relationslinjen för den relation som du vill ändra. Relationslinjen blir bredare när den markeras.

  6. Dubbelklicka på relationslinjen.

    - eller -

    Klicka på Redigera relationer i gruppen Verktyg på fliken Design.

    Dialogrutan Redigera relationer öppnas.

  7. Markera kryssrutan Referensintegritet.

  8. Markera kryssrutan Uppdatera poster i relaterade tabeller eller Ta bort poster i relaterade tabeller eller markera båda.

  9. Gör fler ändringar i relationen om du vill och klicka på OK.

Obs!: Om primärnyckeln är ett Räknare-fält har kryssrutan Uppdatera poster i relaterade tabeller ingen effekt, eftersom du inte kan ändra värdet i ett Räknare-fält.

Överst på sidan

Ta bort en tabellrelation

Om du vill ta bort en tabellrelation måste du ta bort relationslinjen på dokumentfliken Relationer. Se till att markören pekar på relationslinjen och klicka sedan på linjen så att den markeras. Relationslinjen blir bredare när den markeras. Tryck på DEL när relationslinjen är markerad. När du tar bort en relation tar du också bort stödet för referensintegritet för relationen. Därför går det inte längre att automatiskt förhindra att överblivna poster skapas på N-sidan av en relation.

  1. Klicka först på Microsoft Office-knappen Bild av Office-knappen och sedan på Öppna.

  2. Välj och öppna databasen i dialogrutan Öppna.

  3. Klicka på Relationer i gruppen Visa/dölj på fliken Databasverktyg.

    Bild av menyfliksområdet i Access

    Dokumentfliken Relationer visas.

    Om du ännu inte har definierat några relationer, och det är första gången som du öppnar dokumentfliken Relationer, visas dialogrutan Visa tabell. Om dialogrutan visas klickar du på Stäng.

  4. Klicka på Alla relationer i gruppen Relation på fliken Design.

    Alla tabeller med relationer visas tillsammans med relationslinjerna. Observera att dolda tabeller (tabeller där kryssrutan Dold är markerad i dialogrutan Egenskaper för tabellen) och deras relationer inte visas såvida inte Visa dolda objekt är markerat i dialogrutan Navigeringsalternativ.

    Mer information om alternativet Visa dolda objekt finns i artikeln Guide till navigeringsfönstret.

  5. Klicka på relationslinjen för den relation som du vill ta bort. Relationslinjen blir bredare när den markeras.

  6. Tryck på DEL.

    - eller -

    Högerklicka och klicka på Ta bort.

  7. Meddelandet Vill du ta bort den markerade relationen från databasen? kanske visas. Om så är fallet klickar du på Ja.

Obs!: Om någon av tabellerna ingår i en relation som används – kanske av en annan person eller process, eller i ett öppet databasobjekt som ett formulär – går det inte att ta bort relationen. Du måste stänga alla öppna objekt som använder dessa tabeller innan du kan ta bort relationen.

Överst på sidan

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.

×