Brug af ER-modellen til større data skaber en masse kompleksitet, mens man designer en databasemodel. Så for at minimere kompleksiteten blev Generalisering Specialisering og Aggregation introduceret i ER-modellen. Disse blev brugt til dataabstraktion. I hvilken en abstraktionsmekanisme bruges til at skjule detaljer om et sæt objekter.
Generalisering
Generalisering er processen med at udtrække fælles egenskaber fra et sæt af enheder og skabe en generaliseret enhed fra det. Det er en bottom-up tilgang, hvor to eller flere enheder kan generaliseres til en enhed på højere niveau, hvis de har nogle attributter til fælles.
Generalisering Eksempel: STUDENT og FAKULTET kan generaliseres til en enhed på højere niveau kaldet PERSON som vist i diagrammet nedenfor. I dette tilfælde bliver almindelige attributter som P_NAME og P_ADD en del af en højere enhed (PERSON) og specialiseret egenskaber ligesom S_FEE blive en del af en specialiseret enhed (STUDENT).
Specialisering
I specialisering er en enhed opdelt i underenheder baseret på dens karakteristika. Det er en top-down tilgang, hvor enheden på højere niveau er specialiseret i to eller flere lavere niveauer enheder .
Specialisering Eksempel: en MEDARBEJDER-enhed i et medarbejderstyringssystem kan specialiseres i DEVELOPER TESTER osv. I dette tilfælde bliver almindelige attributter som E_NAME E_SAL etc. en del af en højere enhed (EMPLOYEE), og specialiserede attributter som TES_TYPE bliver en del af en specialiseret enhed (TESTER).
Arv
Det er et vigtigt træk ved generalisering og specialisering. I specialisering er en enhed på højere niveau opdelt i underenheder på lavere niveau, der arver dens attributter. I generalisering kombineres lignende enheder på lavere niveau til en enhed på højere niveau, der har fælles attributter. I begge tilfælde tillader arv underenheder at genbruge moderenhedens egenskaber.
- Attribut arv: Det gør det muligt for enheder på lavere niveau at arve attributterne fra enheder på højere niveau og omvendt. I diagrammet er bilenheden en arv af køretøjsenheden, så bil kan erhverve attributter for køretøjet. Eksempel: Bil kan erhverve modelegenskaber for køretøj.
- Forholdsarv : Underenheder arver også relationer fra moderenheden.
- Overordnet arv : Underenheder kan tilsidesætte eller tilføje deres egne attributter eller adfærd, der er forskellig fra den overordnede.
- Deltagelsesarv: Deltagelsesarv i ER-modellering refererer til nedarvningen af deltagelsesbegrænsninger fra en enhed på højere niveau (superklasse) til en enhed på lavere niveau (underklasse). Det sikrer, at underklasser overholder de samme deltagelsesregler i relationer, selvom attributter og relationer i sig selv nedarves forskelligt.
Eksempel på relation Eksempel: I diagrammet har køretøjsenheden en relation til cyklusenheden, men den ville ikke automatisk erhverve selve relationen med køretøjsenheden. Deltagelsesarv refererer kun til nedarvningen af deltagelsesbegrænsninger, ikke de faktiske forhold mellem enheder.
Aggregation
- Et ER-diagram er ikke i stand til at repræsentere forholdet mellem en enhed og en relation, som kan være påkrævet i nogle scenarier.
- I disse tilfælde aggregeres en relation med dens tilsvarende enheder til en enhed på højere niveau.
- Aggregation er en abstraktion, hvorigennem vi kan repræsentere relationer som entitetssæt på højere niveau.
Aggregation Eksempel: en medarbejder, der arbejder på et projekt, kan kræve noget maskineri. Så REQUIRE relation er nødvendig mellem relationen WORKS_FOR og entity MACHINERY. Brug af aggregering WORKS_FOR-relation med dens entiteter MEDARBEJDER og PROJEKT aggregeres til en enkelt enhed, og relationen REQUIRE oprettes mellem den aggregerede enhed og MACHINERY.
Repræsenterer aggregation via skema
Følg disse trin for at repræsentere aggregering i et relationsskema:
1. Opret skema for det aggregerede forhold
- Dette vil blive behandlet som et enhedssæt.
- Det inkluderer de primære nøgler for de deltagende enheder i basisforholdet.
- Det inkluderer også alle beskrivende attributter for basisforholdet.
2. Opret skema for forholdet på højere niveau (aggregation)
- Dette skema inkluderer: Den primære nøgle i det aggregerede relationsskema.
- Den primære nøgle for den tilknyttede enhed, den vedrører.
- Eventuelle yderligere beskrivende attributter for dette forhold på højere niveau.