De presentatie wordt gedownload. Even geduld aub

De presentatie wordt gedownload. Even geduld aub

Databases & SQL Docent: Henny Klein

Verwante presentaties


Presentatie over: "Databases & SQL Docent: Henny Klein"— Transcript van de presentatie:

1 Databases & SQL Docent: Henny Klein email hklein@let.rug.nl
spreekuur: di 13-15 spreekuurtijd? Lesmateriaal en opdrachten onder Programma DB&SQL

2 Inhoud van de cursus Eerste periode: H 1 t.m. 5 Tweede periode:
Basiskennis voor het ontwerpen van en werken met relationele databases Tweede periode: H 6 t.m. 10 andere typen databases processen in een DBMS gedistribueerde systemen

3 Inhoud van de practica Access: de basishandelingen: tabellen, relaties, QBE, formulieren, rapporten Werken met Access- SQL datadefinitie datamanipulatie queries Programmeren in Access functies, gebeurtenisprocedures (VBA, DAO) Applicatiebouw Gecombineerd gebruik van Office pakketten?? Doe ik dan dan? DB&SQL

4 Voorbeelden en eigen ontwerp!
Naast oefenen met voorbeelddatabases gaat iedere student ook een eigen database bouwen, als oefenmateriaal voor jezelf en voor anderen: in hoorcolleges: uitwisselen en bespreken van de ontwerpen in SQL practica: vragen bedenken / oplossen in eigen en andermans database Opdracht deze week: Bedenk alvast een onderwerp! opdracht straks herhalen, na wat voorbeelden DB&SQL

5 Het boek De essenties, maar beknopt, op colleges toelichting, voorbeelden Exercises, ook als zelfcontrole

6 Beoordeling Ontwerpen Project SQL/VBA Tentamen 10% 20% 30% 40%
10% 20% 30% 40% Ontwerpopdrachten als huiswerk Eigen project: langzaam uitbreidend in practicum SQL en VBA: practicumoefeningen Tentamen: boek geen idee eigenlijk DB&SQL

7 Kaartenbak, file en database systeem
Hoe zocht je voor het computertijdperk een boek in de bibliotheek? Voordelen electronisch systeem? Voordelen database systeem boven een (tekst)file? Hoe werkten organisaties/bedrijven voor het computertijdperk? Voordelen database systeem boven losse files?

8 Database systemen Systematische en gestructureerde gegevensopslag
ieder gegeven slechts eenmaal opgeslagen integriteit en veilgheid van gegevens bewaakt gegevens beschikbaar voor verschillende applicaties gelijktijdig gebruik mogelijk verschillende “views” op de data Toepassingen op vele gebieden (bedrijfs)administratie online gegevens invoeren en/of lezen databanken gegevens wetenschappelijk onderzoek data mining Bespreken, voorbeelden geven! Wat je ook gaat doen, databases vaak belangrijk! DB&SQL

9 Informatiekunde en databases
DBMS: hèt systeem om informatie in op te slaan, en dus ook vaak centraal in informatiekundig werk: bij veel bedrijfsstages wordt je gevraagd met (online) databases te werken ook bij onderzoek of onderzoeksstage kun je een database nodig hebben

10 Database: conceptueel model van de werkelijkheid
Bedenk welke gegevens (attributen) je zou kunnen opslaan van de volgende entiteiten: boeken bomen Keuzes van attributen hangen niet alleen af van de eigenschappen van de dingen, maar ook van de context. Een database is een model van de werkelijkheid.

11 Het meer-lagen systeem
Presentatie van de data (views) Access: Formulieren, rapporten, VBA, SQL Buiten het DBMS: (web)applicaties Logische structuur van de data (conceptual level) DBMS Operating system Fysieke opslag van de data DB&SQL

12 Typen databases Eerdere typen: Momenteel meest gangbaar:
Hiërarchische databases Netwerk databases Momenteel meest gangbaar: Relationele databases In ontwikkeling: Object-georiënteerde databases

13 Relationele db: voorbeeld van een tabel
Schema: Leveranciers (code, lev_naam, adres, woonplaats) Tabel Leveranciers: CODE LEV_NAAM ADRES WOONPLAATS 004 Hovenier G.H. Zandweg 50 Lisse 009 Baumgarten R. Taksstraat 13 Hillegom 011 Struik BV Bessenlaan 1 Lisse 013 Spitman en Zn. Achtertuin 9 Aalsmeer 014 Dezaaier L.J.A. De Gronden 101 Lisse 019 Mooiweer FA. Verlengde Zomerstr. 24 Aalsmeer Iedere rij representeert de gegevens van 1 leverancier Elke rij moet uniek zijn. Gegevens opgesplitst in eenvoudige attributen. DB&SQL

14 De elementen van een tabel/ relation
tabelkop: schema heading attribuut, veldnaam, Kolomkop attribute record, entiteit, rij, tupel Tuple, row record Set body eerst nog meer voorbeelden, dan pas al deze termen! Veldwaarde value Kolom column NB Attribuut heeft datatype, domein DB&SQL

15 De identificatieplicht
Uiteraard wil je niet dat iets/iemand dubbel in je tabel komt. De keuze van je identificatie is belangrijk: ook nieuwe entiteiten moeten er aan kunnen voldoen. Welke identificatie kun je gebruiken voor de studenten in PROGRESS de boeken in de UB de leden van een tennisclub? DB&SQL

16 De identificatieplicht
Welke problemen kun je verwachten bij gebruik van NAW-gegevens (Naam Adres Woonplaats) ISBN geboortedatum? Vaak wordt gewerkt met een identificatienummer als ‘primaire sleutel’. Dit werkt gemakkelijk en maakt heel snel zoeken mogelijk, maar je moet wel nadenken over wat je entiteiten in feite onderscheidt! DB&SQL

17 Introductie databaseontwerp
In een database heb je vaak meer dan 1 tabel nodig om je gegevens netjes op te slaan Als voorbereiding op het practicum gaan we alvast naar de belangrijkste basisprincipes bij het ontwerpen van een database kijken In H 4 komt het ontwerp van een relationele database systematischer aan bod.

18 Library als platte tabel: herhaalde gegevens
Auteur- gegevens DB&SQL

19 Herhaalde gegevens - vervolg
Bij elk boek staat de uitgever + het telefoonnummer van de uitgever Het telefoonnummer is een kenmerk van de uitgever, niet van het boek, maar staat op meerdere plaatsen Problemen bij duplicatie van gegevens: ruimtebeslag integriteit bij wijzigingen (update/insert/delete) Alleen gegevens die de entiteit zelf kenmerken en eventuele relaties met andere entiteiten horen in de tabel. Een uitgever is zelf een entiteit, met een eigen attribuut. zie boek6-7, alle problemen, wel bespreken! DB&SQL

20 Een relatie: 1 op veel Uitgever Boek

21 De relationele oplossing voor herhaalde gegevens
BOOKS Elk boek heeft 1 uitgever PUBLISHERS Publisher en Book zijn aparte entiteitsklassen/ tabellen, de relatie wordt gelegd via PubID, dit is de verwijzende sleutel in BOOKS naar een Publisher in PUBLISHERS DB&SQL

22 Auteur: een attribuut met meerdere waarden: provisorische oplossingen ...
3 versies van table BOOKS: Sleutels aangeven!!! DB&SQL

23 “Multiple values”... en hun problemen
Problemen: vinden van een auteur, sorteren op auteur Problemen: vinden van een auteur, sorteren op auteur, maximaal aantal auteurs onbekend, veel lege velden Problemen: herhaling van andere gegevens van een boek: integriteit en ruimte

24 De relationele oplossing voor multiple values
Table BOOKS Table BOOK-AUTHOR Regel: een attribuut is ‘atomair’, ondeelbaar, mag niet meer dan 1 waarde bevatten Er is een aparte tabel gemaakt voor de multiple values. Per rij wordt een BOOK gekoppeld aan een AUTHOR. Book en Author komen beiden meermalen voor, maar een rij is uniek ISBN+Author zijn samen de primaire sleutel van BOOK-AUTHOR. ISBN is een verwijzende sleutel in BOOK-AUTHOR

25 Een relatie: veel op veel
Auteur Boek

26 Library: auteur ook als aparte entiteit
2 entiteiten en een tussentabel DB&SQL

27 Databaseontwerp U B 1 -  S B  - 
Welke entiteiten, met welke attributen? Sleutel? Boek: ISBN, Titel, Prijs Uitgever: PubID, Naam, Adres, Tel.nummer Schrijver: AuID, Naam, Adres, Tel.nummer Welke relaties? Een boek heeft 1 uitgever Een uitgever publiceert 1 of meer boeken  : oneindig: onbepaald hoeveel Een boek heeft 1 of meer schrijvers Een schrijver schrijft 1 of meer boeken U B 1 -  Hier komen soms al discussies over impliciete aannames, en anders wel bij de fysiotherapie-case: kan een patient niet door meer dan een ft behandeld worden, of 2x op een dag gemasseerd worden? S B  -  DB&SQL

28 Entity-Relation Diagram (zie H2)
1 publiceert gepubl. door Boek Uitgever Auteur heeft geschr. geschr. door nu nog toevoegen de tabeelen ontwerp met sleutels! Methode: Ga uit van één rij in de ene tabel, noteer bij de andere tabel 1 of  DB&SQL

29 “Huiswerk” Nalezen, nog vragen?
Rolland: H1 en begin H3, exercises H1 Evt Brookshear 9.1 en 9.2 Bedenk een eigen thema voor een database, en werk uit welke verschillende entiteiten je onderscheidt welke attributen je entiteiten hebben wat voor relaties er tussen de entiteiten bestaan Neem dit in 2voud mee: om in te leveren en om te bespreken op het volgende college! Volgende week gaan we verder met hoofdstuk 2


Download ppt "Databases & SQL Docent: Henny Klein"

Verwante presentaties


Ads door Google