Your SlideShare is downloading. ×
0
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Entiteit-Relatie Model
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Entiteit-Relatie Model

2,182

Published on

Published in: Technology
2 Comments
0 Likes
Statistics
Notes
  • Veel andere tools kunnen een connectie maken met de gegevensbank, zodat je de gegevens van daarin kan aanspreken. Of anders kan je (een gedeelte van) de gegevens exporteren naar een formaat dat die andere tools kunnen importeren.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Vraag: en hoe vertaal je de database naar een olap cube, of naar een format dat handig bruikbaar is voor statistische analyses?
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Be the first to like this

No Downloads
Views
Total Views
2,182
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
72
Comments
2
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide
  • Transcript

    • 1. Gegevensbanken entiteit-relatie model Prof. Erik Duval 2009 - 2010 1
    • 2. http://www.slideshare.net/erik.duval 2
    • 3. 3
    • 4. • ontwerp van een gegevensbank • conceptuele gegevensmodellen • voorbeeld • E-R model • E-R diagrammen • ontwerpkeuzes • niet-binaire relaties 4
    • 5. ontwerp van een gegevensbank
    • 6. 6
    • 7. • analyse • welke behoeften? welk gegevens zijn hiervoor nodig? 6
    • 8. • analyse • welke behoeften? welk gegevens zijn hiervoor nodig? • conceptueel ontwerp • beschrijving van gegevenstypes, relaties, restricties en operaties • volgens hoog-niveau gegevensmodel 6
    • 9. • analyse • welke behoeften? welk gegevens zijn hiervoor nodig? • conceptueel ontwerp • beschrijving van gegevenstypes, relaties, restricties en operaties • volgens hoog-niveau gegevensmodel • transformatie naar implementatiemodel • conceptueel schema volgens model van DBMS 6
    • 10. • analyse • welke behoeften? welk gegevens zijn hiervoor nodig? • conceptueel ontwerp • beschrijving van gegevenstypes, relaties, restricties en operaties • volgens hoog-niveau gegevensmodel • transformatie naar implementatiemodel • conceptueel schema volgens model van DBMS • fysisch ontwerp • intern schema volgens model van DBMS 6
    • 11. 7
    • 12. conceptueel gegevensmodel
    • 13. 9
    • 14. • bedoeling: • relevant deel van de werkelijkheid beschrijven • objecten + feiten 9
    • 15. • bedoeling: • relevant deel van de werkelijkheid beschrijven • objecten + feiten • beschrijving = schema • elke groep gebruikers heeft eigen schema • alle schema's samen: infologisch schema 9
    • 16. • bedoeling: • relevant deel van de werkelijkheid beschrijven • objecten + feiten • beschrijving = schema • elke groep gebruikers heeft eigen schema • alle schema's samen: infologisch schema • modellering gebruikt abstractie • details weggelaten • algemene, gemeenschappelijke eigenschappen en feiten 9
    • 17. 10
    • 18. • waarom • sluit nauwer aan bij realiteit dan een implementatiemodel • bevat meer informatie omtrent betekenis van objecten dan implementatiemodellen • ... en minder informatie omtrent details van implementatie 10
    • 19. • waarom • sluit nauwer aan bij realiteit dan een implementatiemodel • bevat meer informatie omtrent betekenis van objecten dan implementatiemodellen • ... en minder informatie omtrent details van implementatie • gebruikte model: entiteit-relatie-model • objecten • verbanden tussen objecten (relaties) • eigenschappen (attributen) • waardenverzamelingen (domeinen) 10
    • 20. 11
    • 21. • entiteiten ∈ entiteitstype 11
    • 22. • entiteiten ∈ entiteitstype • relaties ∈ relatietype 11
    • 23. • entiteiten ∈ entiteitstype • relaties ∈ relatietype • attributen: waarden ∈ domein 11
    • 24. • entiteiten ∈ entiteitstype • relaties ∈ relatietype • attributen: waarden ∈ domein 11
    • 25. • entiteiten ∈ entiteitstype • relaties ∈ relatietype • attributen: waarden ∈ domein • sleutel • identificator v.e. entiteitstype / relatietype • waarde van sleutel bepaalt eenduidig de entiteit / relatie 11
    • 26. voorbeeld: bedrijf
    • 27. • ...
    • 28. • bedrijf is georganiseerd in departementen • een departement heeft naam, nummer, een of meer locaties, departementshoofd (sinds een bepaalde datum) • elk departement controleert een aantal projecten elk project heeft naam, nummer, 1 locatie • voor elke werknemer • naam, ID, adres, salaris, geslacht, geboortedatum, #uren per week besteed aan elk project, onmiddellijke overste (supervisor) • een werknemer hoort bij 1 departement, maar kan aan meerdere projecten werken die niet noodzakelijk door 1 departement gecontroleerd worden • voor elke werknemer bovendien van de personen ten laste • naam, geslacht, geboortedatum, relatie tot werknemer
    • 29. • schema: mini-wereld • entiteit: object (fysisch of conceptueel) • entiteit type: klasse • attribuut: eigenschap • samengesteld / enkelvoudig (atomair) • eenwaardig / meerwaardig • expliciet voorgesteld / afgeleid • domein (= mogelijke waarden) • null-waarden: • "heeft geen waarde" : niet van toepassing / onbekend • nesten van samengestelde / meerwaardige attributen
    • 30. sleutel • attribuut waarvan de waarden verschillen voor elke verschillende entiteit, in elke mogelijke instantie • soms combinatie van attributen • soms meer dan één sleutel 20
    • 31. ontwerp van ER schema identificeer • entiteitstypes • attributen van elk entiteitstype • sleutelattributen 21
    • 32. 22
    • 33. Fname Minit Lname Salary Name Sex Address Ssn EMPLOYEE Bdate 22
    • 34. Fname Minit Lname Number Salary Name Name Locations Sex Address Ssn EMPLOYEE DEPARTMENT Bdate 22
    • 35. Fname Minit Lname Number Salary Name Name Locations Sex Address Ssn EMPLOYEE DEPARTMENT Bdate PROJECT Name Location Number 22
    • 36. Fname Minit Lname Number Salary Name Name Locations Sex Address Ssn EMPLOYEE DEPARTMENT Bdate PROJECT Name Location DEPENDENT Number Name Relationship Sex Birthdate 22
    • 37. relatie • relatietype = verzameling verbanden (relaties) over entiteitstypes E1, ..., En • graad = aantal betrokken entiteitstypes • binair, ternair, ... • 1 entiteitstype meerdere keren: recursief relatietype • vb. SUPERVISION • entiteitstype speelt rol in een relatie 23
    • 38. 24
    • 39. 25
    • 40. 26
    • 41. ontwerp van ER schema identificeer • entiteitstypes en attributen van elk entiteitstype • sleutelattributen • relatietypes en attributen van elk relatietype • connectiviteit en deelnamebeperkingen • eventuele afgeleide attributen in entiteitstypes • vb: aantal werknemers in een departement 27
    • 42. 28
    • 43. Fname Minit Lname Salary Name Sex Address Ssn EMPLOYEE Bdate 28
    • 44. Fname Minit Lname Number Salary Name Name Locations Sex Address Ssn EMPLOYEE DEPARTMENT Bdate 28
    • 45. Fname Minit Lname Number Salary Name Name Locations Sex Address Ssn EMPLOYEE DEPARTMENT Bdate PROJECT Name Location Number 28
    • 46. Fname Minit Lname Number Salary Name Name Locations Sex Address Ssn EMPLOYEE DEPARTMENT Bdate PROJECT Name Location DEPENDENT Number Name Relationship Sex BirthDate 28
    • 47. Fname Minit Lname Number Salary Name Name WORKS_FOR Locations Sex Address Ssn EMPLOYEE DEPARTMENT Bdate PROJECT Name Location DEPENDENT Number Name Relationship Sex BirthDate 28
    • 48. Fname Minit Lname Number Salary Name Name WORKS_FOR Locations Sex Address Ssn StartDate EMPLOYEE DEPARTMENT Bdate MANAGES PROJECT Name Location DEPENDENT Number Name Relationship Sex BirthDate 28
    • 49. Fname Minit Lname Number Salary Name Name WORKS_FOR Locations Sex Address Ssn StartDate EMPLOYEE DEPARTMENT Bdate MANAGES CONTROLS PROJECT Name Location DEPENDENT Number Name Relationship Sex BirthDate 28
    • 50. Fname Minit Lname Number Salary Name Name WORKS_FOR Locations Sex Address Ssn StartDate EMPLOYEE DEPARTMENT Bdate MANAGES CONTROLS SUPERVISES PROJECT Name Location DEPENDENT Number Name Relationship Sex BirthDate 28
    • 51. Fname Minit Lname Number Salary Name Name WORKS_FOR Locations Sex Address Ssn StartDate EMPLOYEE DEPARTMENT Bdate MANAGES CONTROLS SUPERVISES HAS_DEP. PROJECT Name Location DEPENDENT Number Name Relationship Sex BirthDate 28
    • 52. Fname Minit Lname Number Salary Name Name WORKS_FOR Locations Sex Address Ssn StartDate EMPLOYEE DEPARTMENT Bdate MANAGES Hours CONTROLS WORKS_ON SUPERVISES HAS_DEP. PROJECT Name Location DEPENDENT Number Name Relationship Sex BirthDate 28
    • 53. beperkingen op relatietypes • connectiviteit ("cardinality ratio") • voor binaire relatietypes: 1:1, 1:n, m:n • vb. werknemer behoort bij precies één departement • ternaire, ... relatietypes: meer mogelijkheden • deelnamebeperking • totale / partiële deelname • vb. moet iedereen bij een departement behoren? • voor binaire relatietypes: T-T, T-P, P-P • totale deelname = "bestaansafhankelijkheid" 29
    • 54. 1:n en totaal voor employee en department 30
    • 55. 1:n en partieel voor supervisor en supervisee rol 31
    • 56. 1:1, totaal voor department en partieel voor employee 32
    • 57. attributen van relatietypes • vb. aantal uren / week dat werknemer aan project werkt • 1 : 1 ➡ attribuut kan bij een van de entiteitstypes • 1 : n ➡ attribuut kan bij entiteitstype aan n-zijde • m : n ➡ attribuut kan niet bij entiteitstypes • moet bij relatietype zelf • vb: WORKS_ON: Hours 33
    • 58. Fname Minit Lname Number Salary Name Name N WORKS_FOR 1 Locations Sex Address Ssn StartDate EMPLOYEE DEPARTMENT 1 Bdate 1 1 MANAGES Hours CONTROLS supervisor supervisee 1 N 1 N N SUPERVISES WORKS_ON M HAS_DEP. PROJECT N Name Location DEPENDENT Number Name Relationship Sex BirthDate 34
    • 59. zwakke entiteitstypes • zonder eigen sleutel • identificatie via entiteit van ander entiteitstype • identificerende entiteit = "eigenaar", identificerende relatie • steeds totale deelname in identificerende relatie • partiële sleutel • identificeert entiteit binnen entiteiten met zelfde eigenaar • partiële sleutel = "discriminator" • vb : DEPENDENT 35
    • 60. • bestaansafhankelijkheid • bestaan ene hangt af van bestaan van andere • ondergeschikte entiteit - dominante entiteit • identificatieafhankelijkheid • kan niet geïdentificeerd worden met eigen attributen • = zwakke entiteit • vb. straat ← gemeente ← land • vaak samen, maar niet altijd 36
    • 61. – ENTITEIT : • enkelvoud (bv. PERSOON, niet PERSONEN) – RELATIE : • vervoegd werkwoord – Attribuut – Sleutelattribuut – rolnaam 37
    • 62. 38
    • 63. 39
    • 64. alternatieve notatie (min,max) annotatie bij rol hoe vaak kan een entiteit die rol spelen in een relatie? min = 0 → partieel min > 0 → totaal 40
    • 65. Fname Minit Lname Number Salary Name Name WORKS_FOR (4,N) Locations Sex Address (1,1) Ssn StartDate EMPLOYEE DEPARTMENT (0,1) (1,1) (0,N) Bdate MANAGES (0,1) hours CONTROLS (0,N) supervisee (1,N) supervisor (0,N) (1,1) WORKS_ON (1,N) SUPERVISES HAS_DEP. PROJECT (1,1) Name Location DEPENDENT Number Name Relationship Sex BirthDate 41
    • 66. ontwerpkeuzes • attribuut verwijst naar ander entiteitstype ➡ relatie • vb. manager als attribuut bij DEPARTMENT of als relatie ts. DEPARTMENT en EMPLOYEE • attribuut bij verschillende entiteitstypes ➡ entiteitstype • vb. STUDENT, INSTRUCTOR en COURSE een attribuut ‘Departement’ ➡ entiteit DEPARTMENT • entiteitstype met één attribuut met één entiteitstype relatie ➡ attribuut • vb. entiteitstype DEPARTMENT met slechts één attribuut, en enkel relatie met STUDENT ➡attribuut 42
    • 67. UML klasse diagram 43
    • 68. niet-binaire relaties • vb. van ternaire relatie: SUPPLY • leverancier levert onderdelen voor project • SUPPLIER, PART en PROJECT in relatie SUPPLY • connectiviteit en deelnamebeperking • ingewikkelder, met (min, max) notatie • is ternaire relatie ook via binaire relaties voor te stellen? 44
    • 69. 45
    • 70. Quantity SuppNo ProjNo (0,N) (1,N) SUPPLIER SUPPLIES_FOR PROJECT (0,N) PartNo PART 46
    • 71. een ternair relatietype vervangen door drie binaire relatietypes? SuppNo ProjNo Quantity SUPPLIER (0,N) (1,N) PROJECT SUPPLIES_FOR (0,N) PART PartNo 47
    • 72. een ternair relatietype vervangen door drie binaire relatietypes? SuppNo ProjNo Quantity SUPPLIER (0,N) (1,N) PROJECT SUPPLIES_FOR (0,N) CAN_SUPPLY PART PartNo 47
    • 73. een ternair relatietype vervangen door drie binaire relatietypes? SuppNo ProjNo Quantity SUPPLIER (0,N) (1,N) PROJECT SUPPLIES_FOR (0,N) CAN_SUPPLY PART USES PartNo 47
    • 74. een ternair relatietype vervangen door drie binaire relatietypes? PARTICIPATES SuppNo ProjNo Quantity SUPPLIER (0,N) (1,N) PROJECT SUPPLIES_FOR (0,N) CAN_SUPPLY PART USES PartNo 47
    • 75. 48
    • 76. 49
    • 77. Vragen...? 50

    ×