Technische Universiteit Delft
Faculteit Werktuigbouwkunde, Maritieme Techniek en Technische Materiaalwetenschappen
Transporttechnologie



A.G. Hofman Evaluatie van relationele databasepaketten dQuery en Paradox t.a.v. de geschiktheid voor het implementeren van I/R-data-modellen.
Computeropdracht, Rapport 92.3.LT.3023, Sectie Transporttechniek en Logistieke Techniek.


Het Datamodel

Een data-model bestaat uit 'entiteiten'. Deze worden als volgt gedefinieerd [Blanken]: Een entiteit is een onderscheidbaar object waarover informatie moet worden bijgehouden. In een database worden entiteiten geclassificeerd. Entiteiten waarover men dezelfde soort informatie wil bijhouden worden in dezelfde klasse geplaatst. De entiteiten behoren dan tot hetzelfde 'entiteit-type' (entity-class). In het data-model worden entiteitt-typen aangegeven met een rechthoek.
Tussen verschillende entiteiten kan een verband bestaan, men noemt dit een 'associatie'. Een associatie verbindt entiteiten uit een bepaalde klasse met entiteiten uit dezelfde of een andere klasse [Blanken]. Ook associaties worden in klassen geplaatst, 'association classes'. In het data-model worden associaties aangegeven met een rechthoek met afgeronde hoeken. De collectieve naam voor entiteiten en associaties is 'identiteiten'.
Om informatie aan een identiteit toe te voegen, maakt men gebruik van 'attributen'. Een attribuut van een identiteit-type kent aan een identiteit van dat type een waarde toe [zie: H. Blanken en S. van der Honig "Database-management", Teleac, Utrecht (1992)]. In het data-model worden in de bijbehorende tekst attributen aangegeven. Van entiteit-typen kunnen andere entiteit-typen afgeleid worden. De afgeleide entiteit-typen erven de attributen van de typen waarvan ze zijn afgeleid en zijn existentieel van ze afhankelijk. Dit laatste wil zeggen dat als een entiteit van het 'moedertype' verwijderd wordt, al haar kinderen ook verwijderd worden. Een afleiding van entiteittypen wordt aangegeven met een kraaiepoot.
Identiteiten uit eenzelfde klasse hebben soms verschillende attributen, die elk slechts betrekking hebben op een deel van de identiteiten. In de database ontstaan dan grote tabellen met veel velden, waarvan een groot deel leeg is. Dit is erg onoverzichtelijk. Identiteiten kunnen in dat geval gecategoriseerd worden. Categorisatie vindt plaats op grond van overeenkomstige attributen, zodat iedere identiteit tot één en slechts één categorie behoort. Categorisatie wordt in het data-model met een dubbele pijl aangegeven. Het data-model dat voor deze opdracht gebruikt is staat in bijlage A.

Entiteit/relatie diagram

Alvorens dit data-model om te zetten in een relationele database wordt het eerst omgezet in een Entiteit/Relatie-diagram, zoals gebruikt in de Teleac-cursus [Blanken]. Het zo verkregen diagram kan rechtstreeks vertaald worden in een relationele database.

In het diagram worden entiteit-typen aangegeven met een rechthoek, attributen met een ovaal. Vanuit een entiteit-type wijst een pijl naar een bijbehorend attribuut. Afgeleide entiteit-typen wijzen met een dikke pijl naar het entiteit-type, waarvan ze zijn afgeleid. Relaties tussen entiteit-typen worden aangegeven met een verbinding tussen beide entiteit-typen met boven de verbindingslijn de naam van de relatie. Aan de uiteinden van de verbindingslijnen wordt aangegeven hoevaak het entiteit-type minimaal en maximaal in de relatie voorkomt. Hierbij staat een rondje voor 0 keer, een streepje voor één keer en een kraaiepoot voor veel keren.
In dit geval kan een document dus nul of meerdere keywords hebben en kan een keyword op nul of meerdere documenten voorkomen. Een location daarentegen heeft altijd maar één 'Client', terwijl een Client wel op meerdere locations kan voorkomen. Tenslotte worden geaggregeerde entiteittypen aangegeven met een rechthoek met schuine streepjes in de hoeken. Geaggregeerde entiteiten zijn relaties tussen twee entiteit-typen, die eigen attributen hebben.
In dit geval is Location een geaggregeerd entiteit-type.

Bij de omzetting van het data-model in het E/R-diagram is een andere naamgeving gebruikt en zijn een paar aanpassingen gemaakt.


Rapporten studenten Transporttechniek en Logistieke Techniek
Gewijzigd: 2008.01.19; logistics@3mE.tudelft.nl , TU Delft / 3mE / TT / LT.