1 / 22

Computervaardigheden en Programmatie 1rste BAC Toegepaste Biologische Wetenschappen

Computervaardigheden en Programmatie 1rste BAC Toegepaste Biologische Wetenschappen. Hoofdstuk 5 Databank - Gevorderden. Inhoud. Terminologie redundantie  normalisatie Relaties "1-to-Many" (1-N) Join Inner Join; Outer (Left/Right) Join Relaties (vervolg) "Many-to-Many" (N-M)

devona
Download Presentation

Computervaardigheden en Programmatie 1rste BAC Toegepaste Biologische Wetenschappen

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Computervaardigheden en Programmatie1rste BAC Toegepaste Biologische Wetenschappen Hoofdstuk 5 Databank - Gevorderden Databank - Gevorderden

  2. Inhoud • Terminologie • redundantie  normalisatie • Relaties • "1-to-Many" (1-N) • Join • Inner Join; Outer (Left/Right) Join • Relaties (vervolg) • "Many-to-Many" (N-M) • Join (vervolg) • Recursive Join • Oefeningen Databank - Gevorderden

  3. Uitzonderlijke observaties • Alle observaties per soort waarvoor • gewicht < minimum gewicht • gewicht > maximum gewicht • spanwijdte < minimum spanwijdte • spanwijdte > maximum spanwijdte Databank - Gevorderden

  4. datum soort span- gew- min. max. min. max wijdte icht span. span. gew. gew. 11/11/1992 baardvleermuis 19 4 19 22,5 4 8 11/11/1992 grootoorvleermuis 24 5 24 28,5 4,6 11,3 11/11/1992 grootoorvleermuis 28 12 24 28,5 4,6 11,3 02/11/1993 baardvleermuis 19,5 5 19 22.5 4 8 02/11/1993 grootoorvleermuis 25 7 24 28,5 4,6 11,3 Naïeve Tabelvoorstelling redundante informatie • Redundante Informatie • verkwisting van plaats • gevaar op inconsistenties • verander 1 record  alle gelijkaardige records • symptoom van slecht databankontwerp ! • Oplossing ? Normalisatie (opsplitsen in meerdere tabellen) Databank - Gevorderden

  5. VleermuisSoorten Naam MinimumSpanwijdte MaximumSpanwijdte MinimumGewicht MaximumGewicht "1-to-Many" Relaties 1 vleermuissoort ... kan vele malen geobserveerd worden Observaties Datum Soort Spanwijdte Gewicht 1 * Databank - Gevorderden

  6. VleermuisSoorten Naam MinimumSpanwijdte MaximumSpanwijdte MinimumGewicht MaximumGewicht Inner Join (Query) VleermuisSoorten x Observaties Naam MinimumSpanwijdte MaximumSpanwijdte MinimumGewicht MaximumGewicht Datum Spanwijdte Gewicht Cartesisch Product waar VleermuisSoorten.Naam = Observaties.Soort Observaties Datum Soort Spanwijdte Gewicht Databank - Gevorderden

  7. datum soort span- gew- min. max. min. max wijdte icht span. span. gew. gew. 11/11/1992 baardvleermuis 19 4 19 22,5 4 8 11/11/1992 grootoorvleermuis 24 5 24 28,5 4,6 11,3 11/11/1992 grootoorvleermuis 28 12 24 28,5 4,6 11,3 02/11/1993 baardvleermuis 19,5 5 19 22.5 4 8 02/11/1993 grootoorvleermuis 25 7 24 28,5 4,6 11,3 Inner Join (Resultaat) datum soort span- gew- wijdte icht 11/11/1992 baardvleermuis 19 4 11/11/1992 grootoorvleermuis 24 5 11/11/1992 grootoorvleermuis 28 12 02/11/1993 baardvleermuis 19,5 5 02/11/1993 grootoorvleermuis 25 7 soort min. max. min. max span. span. gew. gew. baardvleermuis 19 22,5 4 8 grootoorvleermuis 24 28,5 4,6 11,3 Databank - Gevorderden

  8. Voorbereidingen • Importeer • "Observaties1.txt" • tabel "Observaties" • "VleermuisSoorten.txt" • 1-N relatie • >>Tools>>Relationships • Selecteer tabellen"Observaties" & "VleermuisSoorten" • Sleep "Observaties.soort" op "VleermuisSoorten.Naam" • (1) bevestig via "Create" • (2) resultaat in "Relationships" • Sluit "Relationships" 1 2 Databank - Gevorderden

  9. Nieuwe query (design view) >>Show Table>>"Observaties" & "VleermuisSoorten" (1) Automatisch relatie sleep uit Observaties (2) datum, soort, gewicht uit VleermuisSoorten (3) MinimumGewicht & MaximumGewicht (4) Bekijk in datasheet view Bekijk in SQL-view "inner join" Inner Join (basis) 1 2 3 4 Databank - Gevorderden

  10. definieer criterium voor gewicht >[VleermuisSoorten].[MaximumGewicht] Or <[VleermuisSoorten].[MinimumGewicht] bewaar als UitzonderlijkeObservatiesGewicht Inner Join (extra criteria) 1 Databank - Gevorderden

  11. VleermuisSoorten Naam MinimumSpanwijdte MaximumSpanwijdte MinimumGewicht MaximumGewicht Outer Join (Query) VleermuisSoorten x Observaties Naam MinimumSpanwijdte MaximumSpanwijdte MinimumGewicht MaximumGewicht Datum Spanwijdte Gewicht Cartesisch Product waar (VleermuisSoorten.Naam = Observaties.Soort) of (er bestaat geen observatie met VleermuisSoorten.Naam = Observaties.Soort) Observaties Datum Soort Spanwijdte Gewicht Databank - Gevorderden

  12. datum soort span- gew- min. max. min. max wijdte icht span. span. gew. gew. 11/11/1992 baardvleermuis 19 4 19 22,5 4 8 11/11/1992 grootoorvleermuis 24 5 24 28,5 4,6 11,3 11/11/1992 grootoorvleermuis 28 12 24 28,5 4,6 11,3 02/11/1993 baardvleermuis 19,5 5 19 22.5 4 8 02/11/1993 grootoorvleermuis 25 7 24 28,5 4,6 11,3 bosvleermuis 26 32 13 20 dwergvleermuis 18 24 3,5 8 Outer Join (Resultaat) datum soort span- gew- wijdte icht 11/11/1992 baardvleermuis 19 4 11/11/1992 grootoorvleermuis 24 5 11/11/1992 grootoorvleermuis 28 12 02/11/1993 baardvleermuis 19,5 5 02/11/1993 grootoorvleermuis 25 7 soort min. max. min. max span. span. gew. gew. baardvleermuis 19 22,5 4 8 grootoorvleermuis 24 28,5 4,6 11,3 bosvleermuis 26 32 13 20 dwergvleermuis 18 24 3,5 8 niet geobserveerde soorten NULL (blanco) Databank - Gevorderden

  13. Nieuwe query (design view) >>Show Table>>"Observaties" & "VleermuisSoorten" Dubbelklik relatie (1) Include all ... VleermuisSoorten ... only from ...: Observaties OK (2) relatie krijgt een pijltje !! sleep uit VleermuisSoorten, Observaties * Bekijk in datasheet view Bekijk in SQL-view "left join" of "right join" Outer Join (basis) 2 1 Databank - Gevorderden

  14. VleermuisSoort Naam MinimumSpanwijdte MaximumSpanwijdte MinimumGewicht MaximumGewicht ObservatieTrip Datum Observator Locatie "Many-to-Many" Relaties * * Observaties Spanwijdte Gewicht • Tijdens een observatietrip observeren we 0 of meerdere vleermuissoorten • Een vleermuissoort kan tijdens 0 of meerdere observatietrips geobserveerd worden • Bij elke observatie noteren we de spanwijdte en het gewicht Databank - Gevorderden

  15. Importeer ObservatieTrips.txt in tabel ObservatieTrips Relaties >>Tools>>RelationShips rechtermuisklik >>Show Table... Voeg tabel Observatietrips toe Sleep "datum" van "Observaties" naar "ObservatieTrips" Maak nieuwe query ObservatieTripRapport Voeg tabellen "Observaties", "Observatietrips", "VleermuisSoorten" toe Voor elke tabel sleep "*" op design grid Criteria Alleen de observatietrips met observator "Serge Demeyer" Join (3 tabellen) Databank - Gevorderden

  16. Oefeningen (vleermuizen) • maak queries voor • Alle observaties waarvan de spanwijdte groter of kleiner is dan de minima/maxima voor de soort • alle soorten die niet werden geobserveerd • tel alle soorten die niet werden geobserveerd • alle observaties in de ijskelder • alle observaties in de ijskelder gemaakt na 2000 Databank - Gevorderden

  17. Antwerpse Metro (overzicht) Databank - Gevorderden

  18. Recursieve Join (1/3) • Importeer • Haltes.txt & Lijnen.txt • Bekijk inhoud tabellen • Maak nieuw query • design view • naam: 1overstap • voeg tabel "Haltes" 2 x toe •  (1) Haltes & (2) Haltes_1 • (3) relatie: "Haltes.volgende" "Haltes_1.halte" • Sleep "Lijn" en "Halte" uit "Halte" en "Halte_1" op grid • Resultaat in Datasheet view ? 1 2 3 Databank - Gevorderden

  19. Recursieve Join (2/3) • Criteria • (1) kolom "Haltes.lijn""= Haltes_1.halte" • Datasheet view • Hoeveel records ? 1 Databank - Gevorderden

  20. Recursieve Join (3/3) • Maak een "left outer join" • (1) Include ALL ...from "Haltes" ...and only ... "Haltes_1" ... • Datasheet view • Hoeveel records ? • Criterium • (2) 2de lijn (Or:)Haltes_1.Lijn Is Null • Datasheet view • Hoeveel records ? • Verklaar het verschil 1 2 Databank - Gevorderden

  21. Oefeningen (antwerpse metro) • maak queries voor • Welke stations kan ik in precies drie stappen bereiken vanuit station "Meir" ? Geef de tussenhaltes. • Welke stations kan ik in precies drie stappen bereiken vanuit station "Meir", zonder van lijn te veranderen ? Geef de tussenhaltes. • Vanuit welke stations kan ik in maximaal drie stappen station "Meir" bereiken, zonder van lijn te veranderen ? Geef de tussenhaltes. Databank - Gevorderden

  22. Conclusie • Terminologie • redundantie  normalisatie • Relaties • "1-to-Many" (1-N) • Join • Inner Join; Outer (Left/Right) Join • Relaties (vervolg) • "Many-to-Many" (N-M) • Join (vervolg) • Recursive Join • Oefeningen Databank - Gevorderden

More Related