ER-diagram casus Videotheek Sekhmet-Ra
lidnummer Lid
adres
registratiedatum voornaam
achternaam
Verhuring
datum retour
verhuurnummer
datum verhuur
Personeelslid
naam functie
personeelsnummer salaris
Item
itemnummer aanschafkosten dagverhuurprijs
soort status∗
Titel
titel
hoofdrolspelers regisseur catalogusnummer Genre
naam
omschrijving
huurt 0,N
1,1
verhuurt 0,N 1,1
is on- derwerp van
1,1 0,N is een 1,1 1,N0,N
ingedeeld in
1,1 1,N
• Een item kan wel vaker onderwerp zijn van een verhuring, maar dat mag natuurlijk niet tegelijkertijd gebeuren. Op een of andere manier moet namelijk bijgehouden worden hoe vaak een item wordt verhuurd (immers na 20 keer verhuren wordt het verkocht). Er zijn twee oplossingen:
1. Het aantal keer dat een item meedoet in een verhuring wordt bijge- houden in de relatie verhuring: maar dan moet een item wel vaker met die relatie mee kunnen doen: cardinaliteit N.
2. Een item wordt verhuurd of niet: de cardinaliteit is 1, maar het aantal keer dat het item verhuurd is, wordt bijgehouden in een extra attribuut “aantal keer verhuurd” van “Item”.
Dit is iets wat jullie eigenlijk niet hebben geoefend: wordt wel fout geteld, maar iedereen krijgt er een punt bij.
1
• Het is verstandig om datum retour en datum verhuur ook identifier te maken van “Verhuring”: een item kan best meerdere keren verhuurd wor- den, maar niet tegelijkertijd. Als deze twee attributen geen identiteit zijn, wordt ook goedgerekend. Geen puntenaftrek.
• Het attribuuttype status mag weggelaten worden: als een item verhuurd is, dan is dat al bekend via de relatie “is onderwerp van”. Geen puntenaftrek.
Alternatieve oplossing
lidnummer Lid
adres
registratiedatum voornaam
achternaam
Personeelslid
naam functie personeelsnummer
salaris Item
itemnummer aanschafkosten dagverhuurprijs
soort status∗
Titel
titel
hoofdrolspelers regisseur catalogusnummer Genre
naam
omschrijving
huurt datum retour
verhuurnummer
datum verhuur
0,N
0,N 0,N
is een 1,1 1,N0,N
ingedeeld in
1,1 1,N
2
3
4