===== Lösung von Aufgabe 4: Lager ===== Die Daten eines großen Baustofflagers sollen in einer Datenbank verwaltet werden. Das Lager besteht aus mehreren Hallen, in denen jeweils mehrere Regale stehen. Jede Halle hat einen Namen (z.B. „Halle 1“), jedes Regal ist mit einem – je Halle eindeutigen – Buchstaben bezeichnet. Auf den Regalen liegen Waren, zu denen jeweils * der Name, * die Information darüber, ob es sich um Gefahrgut handelt oder nicht und * das Einlagerungsdatum gespeichert werden sollen. \\ Ist von einer Ware viel vorhanden, so kann es sein, dass sie auf mehreren Regalen verteilt lagert. Es kann aber auch sein, dass sich in einem Regal mehrere verschiedene Waren befinden. Aus der Datenbank soll sich die Information entnehmen lassen, in welchen Regalen welche Waren in welcher Anzahl lagern. \\ \\ Beispielsweise könnten 20 Sack Trasszement in Regal C, Halle 1 lagern, weitere 30 Sack Trasszement in Regal F, Halle 4. \\ * a) Zeichne das Klassendiagramm (nur Klassenbezeichner und Relationen mit Kardinalitäten, keine Attribute). * b) Erstelle das Datenbankschema (Tabellennamen, Attribute mit Datentypen). Unterstreiche dabei die Primärschlüssel. === Teilaufgabe a) === {{ :jg10:modellierung10:lagerloesung:pasted:lager.png |}} === Teilaufgabe b) === * Halle [__id: int__; name: varchar(20)] * Regal [__id: int__, buchstabe: varchar(1); halle_id: int] * Ware [__id: int__; name: varchar(100); ist_gefahrgut: boolean; einlagerungsdatum: date] * Enthält [__regal_id: int__, __ware_id: int__, anzahl: int]