Datenbanksysteme I ¨Ubungsblatt 2: Relationales Datenmodell

Werbung
Ludwig-Maximilians-Universität München
Department ”Institut für Informatik”
Dr. Matthias Schubert
Elke Achtert, Arthur Zimek
München, 27.10.2005
Datenbanksysteme I
WS 2005/06
Übungsblatt 2: Relationales Datenmodell, SQL-DDL
Besprechung: 03.11. – 07.11.05
Abgabe aller mit Hausaufgabe markierten Aufgaben bis Donnerstag, 03.11.05, 12:00 Uhr
Aufgabe 2-1
Relationales Datenmodell (Hausaufgabe)
Achtung: Diese Aufgabe ist identisch mit Aufgabe 1-2 von Übungsblatt 1. Die Abgabefrist ist um eine Woche
verlängert. D.h., die Übungsblätter 1 und 2 werden gemeinsam bewertet.
Ein Großhandelsunternehmen bezieht Waren von verschiedenen Lieferanten zu bestimmten Preisen. Jeder Lieferant besitzt eine Adresse. Jede bezogene Ware wird von genau einem Lieferanten geliefert (nicht von mehreren). Die Informationen über die gelieferten Waren werden in einer Tabelle mit den Attributen Lieferant,
Adresse, Ware und Preis gespeichert. Die Tabelle habe folgenden Inhalt:
Lieferant
Albrecht
Albrecht
Huber
Huber
Huber
Meier
Adresse
Industriestr. 108
Industriestr. 108
Turmstr. 12
Turmstr. 12
Turmstr. 12
Tal 48
Ware
Rußfilter
Schutzbrillen
Schrauben
Dübel
Nägel
Spanplatten
Preis
36.20
61.00
75.60
35.10
18.60
108.00
(a) Welcher Nachteil ergibt sich, wenn die Tabelle nach obigem Schema gespeichert wird?
(b) Der Lieferant mit dem Namen Huber zieht in die Badstr. 34 um. Was ist beim Aktualisieren der Tabelle
zu beachten? Welches Problem ergibt sich sonst?
(c) Das Großhandelsunternehmen nimmt Spanplatten aus seinem Sortiment. Da Lieferant Meier nun keine
Spanplatten mehr liefern soll, wird die entsprechende Zeile aus der Tabelle entfernt. Welcher Nachteil
entsteht dadurch?
(d) Welches Problem ergibt sich, wenn ein neuer Lieferant mit Adresse in die Tabelle eingefügt werden soll,
der noch keine Ware liefert?
(e) Spalten Sie obige Tabelle in mindestens zwei Tabellen auf, so dass die in (a) bis (d) diskutierten Probleme
und Nachteile vermieden werden. Achten Sie auf die korrekte Verknüpfung Ihrer Tabellen.
1
Aufgabe 2-2
SQL-DDL
Gegeben seien die Relationen Lieferant L, Teil T und Projekt P als Datenmodell für eine Lieferanten-TeileProjekte-Datenbank. Ferner existiert eine Relation LTP, die die Beziehungen der vorgenannten Relationen
modelliert:
L (lnr, lname, sitz)
P (pnr, pname, ort)
T (tnr, tname, farbe, gewicht, preis)
LTP (lnr, tnr, pnr, menge)
Die Schlüssel der jeweiligen Relationen sind variable Strings der maximalen Länge 10. Die Attribute gewicht
und menge sind positive ganze Zahlen. Alle übrigen Attribute sind variable Strings der maximalen Länge 40.
Die Attribute lname, tname und pname müssen immer gefüllt sein.
(a) Geben Sie CREATE TABLE–Befehle mit den dafür notwendigen Constraints zur Definition des o.g.
Datenbankschemas an.
(b) Fügen Sie in die Lieferanten-Relation L eine weitere Spalte status von ganzzahligem Typ ein.
(c) Ändern Sie den Datentyp des Attributs preis in eine Gleitkommazahl mit maximal 2 Nachkommastellen.
(d) Löschen Sie die Spalte preis aus der Teile-Relation T.
(e) Als krönenden Abschluß sollen Sie alle Tabellen wieder löschen.
2
Zugehörige Unterlagen
Herunterladen