Vi fortsätter vår resa genom olika ERD-notationer, låt oss granska Chen ERD-notationen.
Peter Chen, som utvecklade entitetsrelationsmodellering och publicerade sitt arbete 1976, var en av pionjärerna när det gäller att använda begreppen entitetsrelationer i mjukvaru- och informationssystemmodellering och design. Chen ERD-notationen används fortfarande och anses presentera ett mer detaljerat sätt att representera enheter och relationer.
Entiteter
En enhet representeras av en rektangel som innehåller enhetens namn.
I Chen-notationen särskiljer vi typer av enheter :
-
enhet
-
svag enhet – en enhet som inte kan identifieras enbart genom dess attribut. Förekomsten av en svag enhet är beroende av en annan enhet som kallas ägarenheten. Den svaga enhetens identifierare är en kombination av identifieraren för ägarenheten och den partiella nyckeln för den svaga enheten.
-
associativ enhet – en enhet som används i en många-till-många-relation (representerar en extra tabell). Alla relationer för den associativa enheten bör vara många
Attribut
I Chen-notationen representeras varje attribut av en oval som innehåller attributets namn:
Attribut är länkade till entiteten med raka linjer:
Det finns några specifika typer av attribut :
-
nyckelattribut – ett attribut som unikt identifierar en viss enhet. Namnet på ett nyckelattribut är understruket:
Till exempel, eftersom Vehicle Identification Number (VIN) är en unik kod som används för att identifiera enskilda fordon (inga två fordon har samma VIN), kan "VIN" betraktas som nyckelattributet för "CAR"-entiteten:
-
partiell nyckelattribut (diskriminator) – ett attribut som, i kombination med ägarenhetens nyckelattribut, ger en unik identifiering för den svaga enheten. Vi understryker diskriminatorn med en streckad linje:
-
multivalued attribut – ett attribut som kan ha många värden (det finns många distinkta värden som anges för det i samma kolumn i tabellen). Attribut med flera värden avbildas av en dubbel oval:
Till exempel kan varje användare ha flera olika hobbyer, därför kan "hobbyn" betraktas som ett flervärdigt attribut för "användar"-entiteten:
-
härlett attribut (eller beräknat attribut) – ett attribut vars värde beräknas (härleds) från andra attribut. Det härledda attributet kan eller kanske inte lagras fysiskt i databasen.
I Chen-notationen representeras detta attribut av streckad oval:
Till exempel, efter att ha angett priset exklusive moms och momssatsen, kan vi beräkna priset inklusive moms:
Vissa attribut kan delas upp ytterligare i mindre delar. Till exempel kan attributet "adress" delas in i gatunamn, gatunummer, lägenhetsnummer, stad, stat, postnummer och land.
Dessa kallas sammansatta attribut och är avbildade enligt följande:
Relationer
I Chen-notationen representeras ett förhållande av en diamant (romb) som innehåller förhållandets namn.
Två typer av relationer särskiljs:
-
stark relation – en relation där entitet är existensoberoende av andra enheter och PK of Child inte innehåller PK-komponent av moderenhet. En stark relation representeras av en enda romb:
-
svagt (identifierande) förhållande – en relation där underordnad enhet är existensberoende på förälder, och PK för underordnad enhet innehåller PK-komponent av överordnad enhet. Detta förhållande representeras av en dubbel romb:
Möjlighet för en relation
-
På samma sätt som Barkers notation, en obligatorisk relation representeras av en heldragen linje:
-
En valfri relation representeras av en streckad linje som i Barkers notation:
Kardinalitet
graden av relation (kardinalitet ) representeras av tecknen "1", "N" eller "M" vanligtvis placerade i slutet av relationerna:
-
en-till-en (1:1)
Medarbetaren kan endast hantera en avdelning, och varje avdelning kan endast hanteras av en anställd:
-
en-till-många (1:N)
Kunden kan lägga många beställningar, men varje beställning kan endast göras av en kund:
-
många-till-en (N:1)
Många anställda kan tillhöra en avdelning, men en viss anställd kan bara tillhöra en avdelning:
-
många-till-många (M:N)
En student kan tillhöra mer än en studentorganisation, och en organisation kan anta mer än en student:
Begränsningar för deltagande
En entitetsuppsättning kan delta i en relation antingen helt eller delvis.
-
Totalt deltagande betyder att varje enhet i uppsättningen är involverad i relationen, t.ex. varje student måste vägledas av en professor (det finns inga studenter som inte vägleds av någon professor). I Chen-notationen avbildas denna typ av relation som en dubbel linje.
-
Delvis deltagande betyder att inte alla enheter i uppsättningen är involverade i relationen, t.ex. inte varje professor vägleder en student (det finns professorer som inte gör det). I Chen-notationen representeras ett partiellt deltagande av en enda rad.
Relationen som visas ovan innebär att varje student, utan undantag, måste vägledas av en vald professor, och en – men inte alla – professor kan vägleda många studenter. Så det finns ingen student som inte vägleds av en professor, och å andra sidan kan det finnas professorer som inte vägleder några studenter.
Låt oss nu se hur vårt exempel med bok och kapitel (presenterat i föregående del) ser ut i Chen-notationen.