Databases I Het Entity-Relationship Model

Slides:



Advertisements
Verwante presentaties
Les 2 klassediagrammen II
Advertisements

SQL deel 2: datamodel ontwerp
Briefconventies 6 januari 2014
Schematechnieken en databases
Het ER model Een powerpoint presentatie, gemaakt door: F. Triep
Entiteit-Relatie Model
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Normaliseren Datamodellering 2006.
Databases.
Databases I Van EER naar relationeel
Opleiding AI cursus Databases
LauwersCollege Buitenpost Informatica
ER- en andere notaties in Visual Paradigm
Entity Relation Model (ER-model).
Inleiding Databanken: oefeningen 4 Sven Casteleyn 4 Lokaal: 6G HomePage: te bereiken via
Computervaardigheden en Programmatie Universiteit AntwerpenDatabank - Gevorderden 5.1 Computervaardigheden en Programmatie 1rste BAC Toegepaste Biologische.
Jan Talmon Medische Informatica Universiteit Maastricht
DATABANKEN HET “ENTITY-RELATIONSHIP” MODEL
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Normalisatie Relationeel databaseontwerp:
Opleiding Kunstmatige Intelligentie cursus Databases voor AI
Opleiding AI cursus Databases
Vrij Technisch Instituut - Hasselt
Databases I Relationeel Model Martin Caminada / Wiebren de Jonge Vrije Universiteit, Amsterdam definitieve versie 2002.
Martin Caminada / Wiebren de Jonge Vrije Universiteit, Amsterdam
Databases I (H.9.1-2) Van EER naar relationeel Wiebren de Jonge Vrije Universiteit, Amsterdam versie 2003.
Databases I EER and Object Modeling Martin Caminada / Wiebren de Jonge Vrije Universiteit, Amsterdam definitieve versie 2002.
Databases I (H.3) Het Entity-Relationship Model Wiebren de Jonge Vrije Universiteit, Amsterdam versie 2003.
Databases I (H. 1) Wiebren de Jonge Vrije Universiteit, Amsterdam Voorlopige versie 2003.
Overdracht Patiënt (v 1.0)
Databases.
1 Datastructuren Een informele inleiding tot Skiplists Onderwerp 13.
Laat software voor je werken
Datamodellering en –verwerking 8C020 college 2
SQL ( SERVER ) Les #02: T-SQL. A GENDA Herhaling les 4 Views SELECT…INTO Beheren van tabellen: CREATE ALTER DROP Opdracht voor de volgende les.
LauwersCollege Buitenpost Informatica
Tircms02-p les 3 Functies Strings Structuren. Functies 1. main() 2. { int k; k = 10 ; printf(“%d\n”,fac(k)); } 3. int fac(n) int n; 4. { int f; f= 1;
Hogeschool van Amsterdam - Interactieve Media – Internet Development – Jochem Meuwese - -
Constructie van het kennismodel
Databases I (H. 7: 1-3) Het Relationele Model Wiebren de Jonge Vrije Universiteit, Amsterdam versie 2003.
Databases I Praktische aspecten Database Design en Database System Architectuur Martin Caminada / Wiebren de Jonge Vrije Universiteit, Amsterdam definitieve.
Databases I (Info) Wiebren de Jonge Vrije Universiteit, Amsterdam versie 2003.
1 Attributen Datamodellering Attribuut legt één feit vast over een entiteit  atomair overloaded attributes splitsen, b.v. NAW-gegevens correspondeert.
Databases I (H. 2) Wiebren de Jonge Vrije Universiteit, Amsterdam versie 2003 (blijft dit jaar ‘incompleet’)
Datamodellering en –verwerking 8C020 college 1ste week
Hoofdstuk 11 Databasemanagementsystem. hoofdstuk 112 STROKENDIAGRAMMEN llnrvoornaamtussenvachternaamstraathuisnummerpostcodeplaatstelefoongeslachtgebdatumklas.
Les 0 Structured Query Language SQL. Programma Les 0 – Introductieopdracht Les 1 Les 2 Les 3 Schriftelijke toets.
Java Objectgeoriënteerd Programmeren in Java met BlueJ
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
Analyse 3 INFANL01-3 week 2 CMI Informatica.
ANALYSE 3 INFANL01-3 WEEK 8 CMI Informatica. ANALYSE 3- INFANL01-3 ▸ Vorige les ▸ Herhaling ▸ Normaliseerregels ▸ Omzetten ERD ▸ Group by en SET ▸ Proeftentamen.
ANALYSE 3 INFANL01-3 WEEK CMI Informatica.
GegevensAnalyse Les 2: Bouwstenen en bouwen. CUSTOMER: The Entity Class and Two Entity Instances.
Week 1 BIMAIV03 Les B2 BIMAIV03 Les B2. Uit het voorgaande... CREATE TABLE... Opdracht om een nieuwe tabel binnen de database te creëren. Aandachtspunten.
1 KPN Mobiel – Introductie Repository Object Browser & Designer 10 Designer 10g & Repository Object Browser Maandag 28 februari 2005 Lucas Jellema (AMIS)
EERDER….. Tabellen rij (record, tuple, occurence) kolom (attribuut, veld) tabel (relatie) tabelstructuur : patient(PAT#,PNAAM,LEEFTIJD,GESLACHT,ARTS)
Wat is SQL (1)? SQL (Structured Query Language):  is een zeer krachtige taal met een beperkt vocabulaire (aantal ‘woorden’)  is declaratief (‘WAT’ niet.
De definitie van een object. Een object is een verzameling van eigenschappen en bewerkingen. Veel voorkomende objecten zijn: D (display) Gui (user interface)
– Software development fundamentals
SQL Cursus deel
KRITISCH DENKEN 2 Groeperen © Kritisch Denken.
Tinpro015b-les3 Hfdst 3,4 Meer operatoren Functies.
LauwersCollege Buitenpost Informatica
SQL Les 3 23 February 2019.
SQL Les 7 24 February 2019.
SQL Les 6 14 April 2019.
SQL Les 4 12 May 2019.
– Software development fundamentals
Transcript van de presentatie:

Databases I Het Entity-Relationship Model definitieve versie 2002 Databases I Het Entity-Relationship Model Martin Caminada / Wiebren de Jonge Vrije Universiteit, Amsterdam

Overzicht database design

Voorbeeld UoD Company onderverdeeld in DEPARTMENTs, met unieke naam en nummer, alsmede een employee die de manager is. Startdatum van manager wordt bijgehouden. Een department kan meerdere locaties hebben. Elk department heeft de leiding over een aantal PROJECTs. Elk project heeft unieke naam en nummer, en heeft slechts één locatie. Een EMPLOYEE heeft een naam, SSN, adres, salaris, geslacht en geboortedatum. Elke employee werkt voor slechts één department, maar kan werken aan verschillende projecten (ook van andere afdelingen). Daarnaast worden voor employee bijgehouden: direct supervisor + aantal uren aan projecten. Een employee kan DEPENDENTs hebben (naam, geslacht, geb. datum en relatie tot employee).

Voorbeeld ER-diagram

Entities (1/3) entity instance: reëel bestaand object/ding in het UoD kan zowel fysiek als abstract zijn attribute: een eigenschap van een entity value: een waarde die een attribuut kan aannemen soorten attributen: atomic / composite single-valued / multi-valued stored / derived null values: Not Applicable Missing Unknown

Entities (2/3) entity type: verzameling van alle mogelijke entity instances die hetzelfde concept vertegenwoordigen (en dus ook zelfde attributen hebben) entity set: verzameling van alle entity instances van een zekere entity type die op een bepaald moment in de database zitten single valued attribute: A: E  V multi valued attribute: A: E  (V)

Entities met simple attributes

Entity met composite/multivalued attributes

Let op: deze definitie wijkt af van het boek! Entities (3/3) key: minimale verzameling van één of meerdere attributen die uniek zijn voor iedere entity instance van een bepaalde entity type (voorbeeld: sofi_nummer van PERSOON) key attribute: een attribuut dat tot een bepaalde key behoort Let op: deze definitie wijkt af van het boek!

Notatie college (i.t.t. notatie boek)

Relationships (informeel) relationship instance: verbindt één of meerdere entity instances en heeft specifieke betekenis EMPLOYEE John Smith WORKS_ON PROJECT productX relationship set: bevat alle relationship instances in een bepaalde database relationship type: verbindt één of meerdere entity types EMPLOYEE WORKS_ON PROJECT

Relationships (formeel) relationship instance r := (e1 , e2 , ... , en) met ei entity instances relationship set R  E1 , E2  ...  En met Ei entity sets relationship type R := (E1 , E2 , ... , En ) met Ei entity types

Relationships (tot slot) degree of a relationship: aantal participaties van entity types binary: degree 2 (bv: WORKS_ON / MANAGES) ternary: degree 3 (bv: SUPPLIES) let op: een entity type kan meerdere malen in een relationship type voorkomen (bv: SUPERVISES) verschillende relationship types kunnen op dezelfde entity types zijn gedefinieerd (bv: WORKS_FOR en MANAGES) relationship types kunnen ook attributen hebben

Relaties: binair / many-one

Relaties: binair / one-one

Relaties: binair / many-many

Relaties: ternair

Relaties: “recursive” relationships

Structural constraints cardinality ratio (for binary relationship types): 1:1 (MANAGES) 1:N N:1 (WORKS_FOR) M:N (WORKS_ON) participation constraint: total participation (existence dependent) EMPLOYEE in WORKS_FOR partial participation EMPLOYEE in MANAGES structural constraints: cardinality ratio + participation constraints

(min, max) notatie structural constraints gespecificeerd op iedere participatie (rol) van een entity type E in een relationship type R specificeert in hoeveel relationship instances een entity instance (role) minimaal en maximaal mag voorkomen default (geen constraint): (0, n) “een department heeft precies één manager en een werknemer kan hooguit één department managen” specificeer (1, 1) voor DEPARTMENT in MANAGES specificeer (0, 1) voor EMPLOYEE in MANAGES “een werknemer werkt voor precies één department en een department heeft minimaal vier werknemers” specificeer (1, 1) voor EMPLOYEE in WORKS_FOR specificeer (4, n) voor DEPARTMENT in WORKS_FOR

Weak entities weak entity type: entity type zonder geheel eigen key weak entity type moet participeren in identifying relationship type met identifying entity type (= owner) weak entity wordt geïdentificeerd door partial key + key van de owner voorbeeld: EMPLOYEE HAS_CHILDREN CHILD (attributen: first_name + birthdate) first_name is partial key IS_CHILD_OF is de identifying relationship type EMPLOYEE is owner CHILD geïdentificeerd door first_name (CHILD) + ssn (EMPLOYEE)

Overzicht notatie ER-diagram

Totale ER-diagram

Thuis nalezen: Hoofdstuk 3 voorbereiden: 4.1, 4.2, 4.7