Kardinalitet (datamodellering)

Den inledande delen av denna artikel kan behöva skrivas om. Skälet som anges är: Ingen definition i inledningen. Använd guiden för layout av inledningen för att se till att avsnittet följer Wikipedias normer och innehåller alla viktiga detaljer. (Oktober 2019) (Lär dig hur och när du tar bort det här mallmeddelandet)

Kardinaliteten i en fogning mellan två tabeller är det numeriska förhållandet mellan rader i den ena tabellen och rader i den andra. Vanliga kardinaliteter är en-till-en, en-till-många och många-till-många.

Tänk till exempel på en databas med elektroniska patientjournaler. En sådan databas kan innehålla tabeller som följande:

  • En doctortabell med information om läkare.
  • En patienttabell för medicinska ämnen som genomgår behandling.
  • En encountertabell med en post för varje sjukhusbesök.

Naturliga relationer finns mellan dessa entiteter, t.ex. ett möte där många läkare deltar. Det finns en många-till-många-relation mellan poster i doctor och poster i patient eftersom läkare har många patienter och patienter kan träffa många läkare. Det finns ett en-till-många-förhållande mellan poster i patient och poster i encounter eftersom patienterna kan ha många möten och varje möte endast omfattar en patient.

Ett “en-till-ett”-förhållande används oftast för att dela upp en tabell i två delar för att ge information på ett kortfattat sätt och göra den mer lättförståelig. I sjukhusexemplet kan en sådan relation användas för att hålla isär läkarnas egen unika yrkesinformation från administrativa uppgifter.

I datamodellering grupperas samlingar av dataelement i “datatabeller” som innehåller grupper av datafältnamn som kallas “databasattribut”. Tabellerna är sammankopplade med “nyckelfält”. En “primärnyckel” tilldelar ett fält till sin “specialtabell”. Fältet “Doktorns efternamn” kan t.ex. tilldelas en primärnyckel till tabellen “Doktor” där alla personer med samma efternamn organiseras alfabetiskt enligt de tre första bokstäverna i deras förnamn. En tabell kan också ha en främmande nyckel som anger att fältet är kopplat till primärnyckeln i en annan tabell.

En komplex datamodell kan omfatta hundratals relaterade tabeller. Datorforskaren Edgar F. Codd skapade en systematisk metod för att sönderdela och organisera relationsdatabaser. Codds steg för att organisera databastabeller och deras nycklar kallas databasnormalisering, vilket undviker vissa dolda databasdesignfel (delete anomalies eller update anomalies). I verkligheten slutar processen med databasnormalisering med att tabellerna delas upp i ett större antal mindre tabeller.

I verkligheten är datamodellering av avgörande betydelse, eftersom när uppgifterna blir alltmer omfattande måste tabeller som är länkade med nycklar användas för att påskynda den programmerade hämtningen av uppgifter. Om en datamodell är dåligt utformad kommer till och med ett datorprogramsystem med bara en miljon poster att ge slutanvändarna oacceptabla svarstidsfördröjningar. Av denna anledning är datamodellering en av grundstenarna i den kompetens som en modern programvaruutvecklare behöver.

Lämna ett svar

Din e-postadress kommer inte publiceras.