제이의 블로그

Logisch Datamodellering

Aangemaakt: 2024-04-09

Aangemaakt: 2024-04-09 12:21

In vergelijking met vereistenanalyse en conceptueel datamodellering, is logisch datamodellering een meer mechanisch proces.

Het proces draait voornamelijk om het transformeren van het ERD, het resultaat van conceptueel datamodellering, naar het relationele databaseparadigma op basis van de mapping rules (Mapping Rule).

Mapping Rules

  • Rechthoekige entiteiten worden omgezet naar tabellen.
  • Circulaire attributen worden omgezet naar kolommen.
  • Relaties worden omgezet naar primaire sleutels (PK) of externe sleutels (FK).

Het is het gemakkelijkst om eerst tabellen weer te geven zonder FK.

Relaties

  • De relatie tussen tabellen wordt weergegeven rekening houdend met cardinaliteit en optionaliteit.
  • De eenvoudigste relatie, de 1:1-relatie, wordt eerst weergegeven, gevolgd door de 1:N-relatie en de N:M-relatie.

Verwerking van 1:1-relaties

Bij een 1:1-relatie wordt de afhankelijkheidsrelatie tussen de twee tabellen onderzocht en wordt de FK ingesteld.

Het kan worden gezien als een ouder- en kindtabel.

Verwerking van 1:N-relaties

Bij een 1:N-relatie verwijst 1 naar N, dus de FK wordt ingesteld in N.

Verwerking van N:M-relaties

Om een N:M-relatie in een relationele database te verwerken, wordt een tussentabel (ook wel mappingtabel of koppelingstabel genoemd) aangemaakt en weergegeven.

Het belangrijkste punt hierbij is dat de cardinaliteit en optionaliteit van beide tabellen die worden gerefereerd op basis van de mappingtabel moeten worden weergegeven.

Normalisatie (Normalization)

Logisch Datamodellering

Wikipedia - Database Normalisatie

Het proces van het transformeren van een onbewerkte tabel naar een tabel die geschikt is voor een relationele database.

In de industrie wordt het normalisatieproces tot de 3e normaalvorm (3NF) toegepast, terwijl latere normalisatieprocessen voornamelijk in de academische wereld worden gebruikt.

Normalisatie moet stapsgewijs, één stap tegelijk, worden uitgevoerd.

Eerste normaalvorm (1st Normal Form, 1NF)

  • Kolommen in een tabel mogen alleen atomaire (Atomic) waarden bevatten.

Als we kijken naar het fundamentele principe van de eerste normaalvorm, is het moeilijk te begrijpen wat het betekent, maar het betekent simpelweg dat elke kolom slechts één waarde mag bevatten.

Als er meerdere waarden in één kolom staan, d.w.z. niet atomair, kan dit problemen opleveren, zoals problemen met het uitvoeren van JOIN-instructies in SQL.

Tweede normaalvorm (2nd Normal Form, 2NF)

  • Moet voldoen aan de eerste normaalvorm.
  • Partiële afhankelijkheden moeten worden verwijderd.

Als er dubbele waarden in de rijen van een tabel zijn, wordt de kolom waarop deze rij afhankelijk is gevonden en gescheiden.

Derde normaalvorm (3rd Normal Form, 3NF)

  • Moet voldoen aan de eerste normaalvorm.
  • Moet voldoen aan de tweede normaalvorm.
  • Transitieve afhankelijkheden moeten worden verwijderd.

De term transitieve afhankelijkheid is moeilijk te begrijpen. Voor zover ik begrijp, als er in een bepaalde tabel één of meer waarden zijn die impliciet de id van een andere tabel vertegenwoordigen (natuurlijk met uitzondering van FK's), wordt dit gezien als een transitieve afhankelijkheid.

Reacties0