Transcript
Aufgabe 1: ER Erstellen Sie für folgende Beschreibungen jeweils ein ER-Diagramm. Geben Sie für Teilaussagen, die nicht dargestellt werden können, entsprechende Business Rules an. Begründen Sie gegebenenfalls Entscheidungen, die Sie treffen. Die Mitarbeiter in einem Krankenhaus arbeiten in Teams. Jedes Team besteht aus zwei bis drei Ärzten, drei bis vier Krankenschwestern und zwei Verwaltungsangestellten. Jeder Mitarbeiter kann bis zu vier Teams zugeordnet werden. Aufgabe 2: Rel. Algebra und Logische Optimierung Für alle Teilaufgaben dieser Aufgabe gelten die folgenden Relationen r(ABC), q(ABC), s(CEF) als gegeben. a) Wandeln Sie folgende SQL-Anfragen in entsprechende Ausdrücke der relationalen Algebra um. SELECT r.A, r.B FROM r, s, q WHERE (r.C = s.C OR s.C > q.C) AND s.F > 5; b) Wandeln Sie folgende Ausdrücke der relationalen Algebra in entsprechende SQLAnfragen um.
πA, B (σB=‘12‘ (r)) ∪ πA, B (q
s)
c) Prüfen Sie ob die folgenden Ausdrücke der relationalen Algebra korrekt sind oder nicht. Begründen Sie Ihre Aussage, wenn Sie der Meinung sind, dass ein Fehler vorliegt. gültig □
r (δc F s) Begründung (bei nicht gültig):
nicht gültig □
d) Es werden nun jeweils zwei Ausdrücke der relationalen Algebra gegeben. Prüfen Sie ob diese äquivalent sind (also das gleiche Ergebnis liefern) oder nicht und kreuzen Sie dies entsprechend an. Wenn die Ausdrücke äquivalent sind, kreuzen Sie zusätzlich an, welcher der beiden Ausdrücke performanter (schneller ausführbar) ist. Ansonsten begründen Sie warum die Äquivalenz nicht gilt. 1. 2.
σr.B=‘12‘˅r.B=q.B (r×q×s) σr.B=q.B ((σr.B=‘12’r)×q×s)
1. und 2.:
äquivalent □
nicht äquivalent □
Performanter bei äquivalent: Begründung bei nicht äquivalent:
1. □
2. □
Aufgabe 3: SQL Gegeben sein die abgebildeten Relationen (kursive Attribute deuten auf Fremdschlüssel hin):
a) Geben Sie für die folgenden Anfragen das Ergebnis inklusive Relationsschema an, welches Sie bei der mit den oben dargestellten Instanzen erwarten: SELECT Name, Price FROM customer c, reservation r where Seats = 1; b) Geben Sie für die folgenden Anfragen ein Äquivalent in SQL an: Für welche Flüge liegen keine Reservierungen vor?
2
Aufgabe 4: Normalformen und FDs a) Welche unten aufgeführten funktionalen Abhängigkeiten würden von der unten angegebenen Relation, bezogen auf die eingetragenen Werte, erfüllt werden (Kreuzen Sie das Kästchen links der funktionalen Abhängigkeit an, wenn Sie diese für erfüllt halten – falsche Kreuze führen zu Punktabzug, es kann aber keine negativen Punkte aus dieser Teilaufgabe geben). R
(A a1 a1 a2 a3 a3
B b1 b2 b3 b1 b1
C c1 c2 c3 c4 c1
D) d3 d1 d1 d2 d3 □ AB □ AB □ AB □ AB
B C D BD
b) Gegeben sei das Relationenschema R = (A, B, C, D, E). Geben Sie für die vier unten angegebenen Mengen von funktionalen Abhängigkeiten jeweils an: 1. welche Schlüssel für die Relation existieren; 2. ob sich R in 2. Normalform befindet (mit Begründung); 3. ob sich R in 3. Normalform befindet (mit Begründung). Gehen Sie davon aus, dass die 1. Normalform vorliegt. F = {B
ADC, ADC
B}
Schlüssel = { 2. NF:
Ja □
Nein
□
Begründung:
3. NF:
Ja □
Nein
□
Begründung:
3