H7Dbase

advertisement
71
6
Databases MySQL
MySQL draait onder Unix. Maak bijvoorbeeld met telnet een verbinding met de
facultaire server: ursus.bio.vu.nl
Met volgende opdracht wordt het programma gestart:
mysql –h mysql –u bionr -ppass
waarbij nr een nummer is en pass een password dat verstrekt wordt op het practicum. U
kunt alleen datatbases aanmaken met uw eigen usernaam bionr.
Documentatie over MySQL is te vinden op http://dev.mysql.com/doc/
Opgave 6.1
Normalisatie
(a) Men wil in een bedrijf een database opzetten. Van medewerkers zijn de volgende
gegevens beschikbaar:
-personeelsnummer
-mednr
-naam
-mednm
-afdeling
-afd
-chef van de afdeling
-chef
-projectnummer
-projnr
-projectnaam
-projnm
-gewerkte uren aan project
-uren
Normaliseer dit gegevensmodel en onderstreep de sleutels. Er is gegeven dat ieder medewerker aan meerdere projecten ook buiten de afdeling kan werken en maar tot één afdeling
met maar één chef behoort.
(b) Stel dat je een database wil opzetten voor een plantencollectie. Er zijn de volgende
gegevens beschikbaar:
-taxonnummer
-taxonnr
-taxonnaam
-taxonnm
-familie
-fam
-verspreidingsgebied
-range
-plantnummer
-plantnr
-geslacht
-sex
-locatie van plant
-loca
-synoniemen voor taxonnaam -syn
-persoon die plant gevonden heeft
-source
72
Elke plant behoort tot één taxon en een taxon behoord tot één familie. Per taxon kunnen er
meerdere individuen aanwezig zijn en van elk taxon kunnen meerdere synoniemen worden
opgeslagen. Normaliseer dit gegevensmodel en onderstreep de sleutels.
73
Opgave 6.2
Verschillende database-bewerkingen.
a)
Creëer drie tabellen Arts, Patient en Behandel zoals gegeven in de syllabus.
Gebruik create table. Voeg bij de tabel Patient en Arts ook nog velden toe
voor het adres.
b)
Bekijk de structuren van de tabel. Gebruik describe.
c)
Voer de tabellen in zoals gegeven in syllabus. Gebruik insert into.
d)
Bekijk alle gegevens in de verschillende tabellen. Gebruik select * from.
Opgave 6.3
Projectie en selectie
a)
Print van tabellen Arts een lijst waarop de namen en de nummers van de artsen staan.
Gebruik select veld from.
b) Bekijk een overzicht van alle vrouwelijke patiënten. Gebruik select * from
table where.
c)
Druk een lijst af van alle behandelingen die zijn geslaagd.
Selectie en projectie kunnen ook in één commando worden gecombineerd.
d)
Print een lijst van vrouwelijke patienten.
Opgave 6.4
Mutaties van gegevens in een databasebestand.
a)
b)
c)
Verwijder een record uit een tabel.
Verander de naam van een vrouwelijke patiënt.
Mogen er uit een ziekenhuisadministratie zomaar records uit het Patient-tabel
worden verwijderd?
Opdracht 6.5
Gegevens in meerdere tabellen opgeslagen. Dat betekent dat op de een of andere manier de
gegevens ook weer gekoppeld moeten kunnen worden. Dat gaat via een zogenaamde join.
a)
Druk een lijst af van alle behandelingen met de behandelende arts en behandelde
patient en daarnaast het resultaat. Gebruik select.
Opdracht 6.6
Haal van de website de file computerkunde.dmb op. Dit is een Access database file met
dezelfde tabellen als de MySQL database die aangemaakt is in opdracht 6.2.
Download