AUFGABEN UND LÖSUNGEN ZU DATENBANKEN FRAGEBOGEN-AUFGABE Sie sollen eine Datenbank für Befragungen mittels Online-Fragebögen zu unterschiedlichen Themen erstellen: Ein Fragebogen besteht aus mehreren Fragen, eine Frage kann in mehreren Fragebögen verwendet werden. Es gibt keinen Fragebogen ohne Fragen, ebenso wie es keine Frage gibt, die nicht Bestandteil eines Fragebogens ist. Bei Fragebögen speichern wir u.a. den Namen des Fragebogens, bei Fragen den Text der Frage. Zu Fragen gehören Antworten. Zu einer Frage gibt es natürlich mehrere Antworten, genauso wie Antworten mehreren Fragen zugeordnet sein können. Es gibt keine Antworten, die nicht Fragen zugeordnet sind. Genauso wenig gibt es Fragen ohne Antworten. Bei Antworten speichern wir selbstverständlich den Text der Antwort. Fragen sind Fragebereichen zugeordnet. Eine Frage kann höchstens einem Fragebereich zugeordnet werden, einem Fragebereich hingegen mehrere Fragen. Es gibt keinen Fragebereich ohne Fragen. Umgekehrt gilt das nicht. Es gibt Fragen, die keinem Fragebereich zugeordnet sind. Dies sind z.B. die Eingangsfragen eines Fragebogens. Fragebögen werden im Auftrag von Unternehmen entwickelt. Ein Fragebogen ist genau einem Unternehmen zugeordnet, einem Unternehmen hingegen können mehrere Fragebögen zugeordnet sein. Wir speichern keine Unternehmen, die nicht mindestens einem Fragebogen zugeordnet sind. Genauso wenig gibt es Fragebögen ohne Unternehmen. Bei den Unternehmen speichern wir z.B. den Namen, PLZ, Stadt, Straße. Bei der Durchführung der Befragung beantworten Teilnehmer jede Frage eines Fragebogens mit einer Antwort. Teilnehmer sind Lieferanten und Kunden. Bei allen Teilnehmern speichern wir Name und Email-Adresse. Bei Kunden zusätzlich die Zahlungsweise, bei Lieferanten die Lieferzeit. 1. 2. 3. Erstellen Sie ein Entity Relationship Modell (ERM) der Datenbank. Leiten Sie daraus die Tabellen inkl. der Primär- und Fremdschlüssel ab. (SQL) Geben Sie die Texte aller Fragen des Fragebogens „Bewertung der Corporate Identity“ aus. LÖSUNG ERM: Unternehmen Fragebereich 1..1 0..1 1..* 1..* 1..* Fragebogen 1..* Frage 1..* 1..* Teilnehmer Lieferant Antwort Kunde LÖSUNG TABELLEN: Tabelle Unternehmen Frage Antwort Fragebereich Teilnehmer Kunde Lieferant Fragebogen FrageFragebogen FrageAntwort Befragung Primärschlüssel UnternehmenNr FrageNr AntwortNr FragebereichNr TeilnehmerNr TeilnehmerNr TeilnehmerNr FragebogenNr FrageNr, FragebogenNr FrageNr, AntwortNr FrageNr, AntwortNr, TeilnehmerNr, FragebogenNr Weitere Attribute Name, PLZ, Ort, Straße, Text, FragebereichNr Text Name Name, Email Zahlungsweise Lieferzeit Name, UnternehmenNr VERTEILER-AUFGABE Das an der Hochschule Bochum bestehende Intranet soll erweitert werden. Als neue Anwendung sollen EmailVerteiler ermöglicht werden (nur zur Erläuterung: Email-Verteiler sind Listen mit Namen, an die Emails geschickt werden können). Es gelten folgende Sachverhalte: Email-Verteiler werden von Professoren angelegt. Für jeden Email-Verteiler werden u.a. der Namen des Verteilers und das Anlegedatum gespeichert. In einen Email-Verteiler können mehrere Teilnehmer aufgenommen werden. Teilnehmer können natürlich auch mehreren Email-Verteilern angehören. Teilnehmer sind Professoren und Studenten. Für alle Teilnehmer werden Name, Vorname und email-Adresse abgespeichert, für Professoren zusätzlich berufl. Tel.-Nr, für Studenten zusätzlich die Matrikelnummer. LÖSUNG ERM: 0..* 0..* Teilnehmer Verteiler 0..* Student Professor 1..1 LÖSUNG TABELLEN: Tabelle Verteiler Student Professor Teilnehmer VerteilerTeilnehmer Primärschlüssel VerteilerNr TeilnehmerNr TeilnehmerNr TeilnehmerNr VerteilerNr, TeilnehmerNr SKIVERLEIH-AUFGABE Weitere Attribute TeilnehmerNr, Name, Datum Matrikelnummer, Semester Tel-Nr, Fach Name, Vorname, Email Sie betreiben einen Skiverleih und wollen speichern, welche Kunden welche Ski wann entleihen. Dazu benötigt ihr Skiverleih Informationen über ihre Kunden. Für Kunden speichern wir beispielsweise Name, Vorname, PLZ, Ort. Kunden unterscheiden sich in Privatkunden und Firmenkunden. Für Privatkunden speichern wir zusätzlich die Bankverbindung (BLZ, Kontonummer), für Firmenkunden den Ansprechpartner. Einem Firmenkunden kann maximal eine Rabattgruppe zugeordnet werden. Rabattgruppen hingegen können mehreren Firmenkunden zugeordnet sein. Für Rabattgruppen soll der maximal mögliche Rabatt gespeichert werden. Es gibt keine Firmenkunden ohne Rabattgruppen, sehr wohl existieren aber Rabattgruppen, denen keine Firmenkunden zugeordnet sind. Firmenkunden werden Kundengruppen zugeordnet. Einem Firmenkunden können mehrere Kundengruppen zugeordnet werden, genau so wie einer Kundengruppe mehrere Firmenkunden zugeordnet werden können. Firmenkunden ohne Kundengruppe gibt es nicht, eine Kundengruppe ohne einen Firmenkunden ebenfalls nicht. Für Kundengruppen speichern wir den Namen der Kundengruppe. Ski werden in Skitypen eingruppiert. Dies sind z.B. „Slalomski“, „Abfahrtski“, „Langlaufski“, etc. Ein Ski besitzt genau einen Typ, einem Typ können dagegen beliebig viele Ski zugeordnet sein. Ski ohne Skitypen gibt es nicht, genau so wenig, wie es Skitypen gibt, denen kein Ski zugeordnet ist. Für Ski speichern wir z.B. den Herstellernamen, die Bezeichnung und die Anzahl Exemplare, die der Skiverleih besitzt. Weiterhin werden Ski in Qualitätsstufen eingruppiert. Dies sind z.B. „Basis“, „Mid-Range“ oder „Top-Level“. Auch hier besitzt ein Ski genau ein Qualitätsstufe, eine Qualitätsstufe kann aber mehreren Ski zugeordnet sein. Es gibt keine Ski ohne Qualitätsstufe, genau so wenig wie es Qualitätsstufen ohne Ski gibt. Kunden können Ski für Zeiträume leihen. Zeitraum muss als Entity modelliert werden. Für Zeitraum speichern wir Start- und Endtag des Zeitraums. LÖSUNG ERM: entleiht Kunde Ski 1..* Zeitraum Privatkunde Firmenkunde 1..* 1..* Kundengruppe 1..1 1..1 Typ 0..* 1..1 Rabattgruppe LÖSUNG TABELLEN: Tabelle Kunde Primärschlüssel KundeNr 1..* Weitere Attribute Name, Vorname, PLZ, Ort Qualitätsstufe Privatkunde Firmenkunde Rabattgruppe Kundengruppe Ski KundeNr KundeNr RabattgruppeNr KundengruppeNr SkiNr Skityp Qualitaetsstufe Zeitraum FirmenkundeKundengruppe Ausleihe SkitypNr QualitaetsstufeNr ZeitraumNr KundeNr, KundengruppeNr KundeNr, SkiNr, ZeitraumNr BLZ, Kontonummer Ansprechpartner, RabattgruppeNr maximalerRabatt Name Herstellernamen, Bezeichnung, Anzahl, SkitypNr, QualitaetsstufeNr Typ Qualitaetsstufe Starttag, Endtag keine keine WINTERDIENST-AUFGABE Nach den Erlebnissen des vergangenen Winters gründen Sie ein privates Räumunternehmen, um Kommunen beim Winterdienst zu unterstützen. Jeder Kommune, mit der Sie zusammenarbeiten, sind mehrere Straßen zugeordnet. Kommunen ohne Straßen gibt es nicht. Die Straßen gehören jeweils zu genau einer Kommune. Zu Kommunen speichern Sie den Namen und eine Adresse, zu Straßen den Namen und die Länge. Straßen besitzen eine Reinigungsklasse. In diesen wird gespeichert, wie oft die Straße geräumt werden muss. Straßen ohne Reinigungsklasse gibt es nicht. Eine Reinigungsklasse kann mehreren Straßen zugeordnet sein, auch keiner. Da nicht alle Straßen gleich groß sind, wollen Sie auch speichern, welche Fahrzeuge für welche Straßen geeignet sind. Für die Fahrzeuge speichern Sie dazu einen Namen, die Breite und das Gewicht. Für jede Straße sind mehrere Fahrzeuge geeignet, mindestens aber eins. Auch sind die Fahrzeuge für unterschiedliche Straßen geeignet, es gibt keine Fahrzeuge, die nicht einsetzbar sind. Ihre Mitarbeiter, zu denen Sie Namen und Adresse speichern, haben unterschiedliche Führerscheine. Daher müssen Sie sich auch merken, welche Mitarbeiter welche Fahrzeuge fahren dürfen. Zu allen Fahrzeugen haben Sie natürlich Mitarbeiter, meistens sogar mehrere. Genauso darf jeder Mitarbeiter mindestens ein Fahrzeug fahren. Um den Kommunen Ihre Leistungen in Rechnung stellen zu können, müssen Sie weiterhin speichern, welcher Mitarbeiter an welchem Tag mit welchem Fahrzeug eine Straße gereinigt hat. LÖSUNG ERM: 1..1 1..* Kommune Reinigungsklasse Straße 1..1 0..* 1..* geeignet_für 1..* Fahrzeug Mitarbeiter 1..* 1..* RAUMRESERVIERUNG-AUFGABE In einem Unternehmen soll die Reservierung von Räumen durch ein Datenbanksystem unterstützt werden. Sie sollen das Modell erstellen: Räume sind Raumtypen zugeordnet. Raumtypen sind z.B. Seminarraum, PC-Raum oder Besprechungsraum. Jeder Raum ist genau einem Raumtyp zugeordnet, einem Raumtyp können natürlich mehrere Räume zugeordnet sein. Räume, die keinem Raumtyp zugeordnet sind, gibt es nicht. Ebenso wenig werden Raumtypen abgespeichert, denen keine Räume zugeordnet sind. Bei Räumen speichern wir unter anderem den Namen des Raums, bei Raumtypen den Typ. Das Reservierungssystem wird von Mitarbeitern genutzt. Bei den Mitarbeitern wird zwischen internen und externen Mitarbeitern unterschieden. Bei externen Mitarbeitern speichern zusätzlich zu Namen, Vornamen und email-Adresse noch seine Mobilfunknummer und den Namen des Dienstleisters, über den der externe Mitarbeiter beschäftigt wird, bei internen Mitarbeitern hingegen die Büronummer und die interne Durchwahl. Externe Mitarbeiter sind Projekten zugeordnet. Ein externer Mitarbeiter kann mehreren Projekten zugeordnet sein, einem Projekt natürlich auch mehrere externe Mitarbeiter. Externe Mitarbeiter ohne Projekte gibt es nicht. Projekte ohne externe Mitarbeiter hingegen schon. Zu Projekten speichern wir die Namen der Projekte. Mitarbeiter können Räume für Zeitblöcke an Terminen reservieren. Die Zeitblöcke entsprechen den Zeitblöcken an der Hochschule (8-10, 10-12, etc.). Zu Zeitblöcken speichern wir den Zeitraum des Zeitblocks. LÖSUNG ERM: ZEITUNGSARTIKEL-AUFGABE Sie arbeiten in einem Zeitungsverlag, der seine Artikel in einer Datenbank verwalten will. Zu den Artikeln werden eine Überschrift, der eigentliche Text und das Datum des Artikels gespeichert. Artikel erscheinen entweder nur online (Online-Artikel) oder in gedruckter Fassung (Druck-Artikel). Allen Artikeln soll ein Ressort zugeordnet sein. Ressorts sind z.B. Politik, Sport, Wissenschaft & Forschung, dafür soll eine Bezeichnung gespeichert werden. Ein Artikel ist genau einem Ressort zugeordnet. Ressorts können viele Artikel beinhalten, mindestens aber einen. Bei Online-Artikel soll gespeichert werden, welche Werbung mit angezeigt werden soll. Zu einem Online-Artikel soll immer Werbung gezeigt werden, eventuell auch unterschiedliche gleichzeitig. Ebenso soll jede Werbung in einem Online-Artikel erscheinen, sie kann auch in mehreren auftreten. Weiterhin sollen zu einem Online-Artikel Kommentare eingegeben werden können. Ein Kommentar betrifft immer genau einen Online-Artikel, wohingegen ein Online-Artikel mehrere Kommentare, auch gar keine haben kann. Druck-Artikel erscheinen in genau einer Ausgabe der Zeitung. Zu einer Ausgabe speichern wir das Datum der Ausgabe. Eine Ausgabe enthält natürlich mindestens einen Artikel. LÖSUNG ERM: Artikel Ressort 1..* 1..1 1..* Online-Artikel 1..* Druck-Artikel 1..1 Ausgabe 1..1 1..* 0..* Werbung Kommentar FITNESSSTUDIO-AUFGABE Sie haben den Jackpot im Lotto gewonnen und machen sich mit einer Fitnessstudiokette selbständig. Da Sie deutschlandweit agieren, möchten Sie speichern, in welcher Stadt ein Studio liegt. In einer Stadt können mehrere Studios Ihres Unternehmens sein. Ein Studio ohne Stadt gibt es nicht. Sie speichern auch keine Städte, in denen Sie kein Studio haben. Ihre Mitglieder, zu denen Name und Geburtsdatum gespeichert werden sollen, sind genau einem Studio fest zugeordnet. Zu jedem Studio gibt es natürlich ganz viele Mitglieder, nur bei der Neueröffnung eines Studios ist unter Umständen noch kein Mitglied vorhanden. In den Studios gibt es verschiedene Trainingsbereiche wie z.B. Gerätebereich, Ausdauerbereich, Freihantelbereich, Bereich für Dehnübungen. Diesen Bereichen sind verschiedene Geräte zugeordnet (z.B.: Ausdauerbereich: Laufband, Stepper, Gerätebereich: Rudermaschine, Freihantelbereich: Hanteln, Bereich für Dehnübungen: Gymnastikmatte). Jedes Studio hat mindestens einen Trainingsbereich, und jeder Trainingsbereich mindestens einen Gerät. Geräte sind umgekehrt genau einem Trainingsbereich zugeordnet, und Trainingsbereiche kommen in verschiedenen (mindestens einem) Studio vor. Als besonderen Service bieten Sie Ihren Mitgliedern an zu speichern, an welchem Tag das Mitglied in welchem Studio an welchem Gerät trainiert hat. LÖSUNG ERM: Stadt Studio 1..1 1..* 1..* Mitglied 1..1 0..* 1..* Trainingsbereich trainiert 1..1 1..* Gerät CD-SAMMLUNG Ein Auftraggeber möchte seine CD-Sammlung archivieren. Dazu soll eine Datenbank verwendet werden. CDs werden von einem Produzenten produziert. Jede CD hat genau einen Produzenten, wogegen Produzenten mehrere CDs produzieren können. Produzenten, zu denen keine CDs vorliegen, speichern wir nicht. Zu CDs speichern wir den Titel und das Jahr der Produktion. Zu Produzenten den Namen. Eine CD wird durch ein Label veröffentlicht. Auch hier speichern wir nur Labels, zu denen CDs vorhanden sind. Ein Label kann natürlich mehrere CDs veröffentlichen, umgekehrt gilt dies aber nicht. Auch gibt es keine CDs, die nicht einem Label zugeordnet sind. Zu Labels werden der Name und der Ort, an dem das Label ansässig ist, gespeichert. Musiktitel werden durch Urheber komponiert. Mehrere Urheber können einen Titel komponieren, es muss aber mindestens einer sein. Urheber können auch mehrere Titel komponieren, sie müssen dies aber nicht tun, denn: Musiktitel werden durch Urheber getextet (d.h. Urheber erstellen den Text für einen Titel). Abermals können mehrere Urheber den Text zu einem Titel erstellen, es gibt aber auch Titel ganz ohne Text. Und Urheber können den Text verschiedener Titel schreiben. Von Urhebern speichern wir den Vor- und den Nachnamen, zu den Musiktiteln wird der eigentliche Titel gespeichert. Weiterhin werden in der Datenbank Interpreten mit ihrem Künstlernamen und der Adresse gespeichert. Da ein Musiktitel auf verschiedenen CDs erscheinen kann, und dabei von verschiedenen Interpreten gesungen bzw. gespielt werden kann, soll in der Datenbank auch gespeichert werden, welcher Titel auf welcher CD von wem interpretiert wird. Dabei soll auch das Jahr und die Länge der Interpretation gespeichert werden. LÖSUNG ERM: 1..1 1..* Produzent Label CD 1..1 1..* Interpret komponiert 0..* Musiktitel textet 0..* 1..* Urheber 0..* REISEBÜRO-AUFGFABE Adresse Reiseziel 1..* 0..* 0..* 1..1 Kunde Auftrag 1..1 Privater Kunde 1..* Einzelinhaberbetrieb Rabattstufe 0..* 0..1 Oben stehendes Entity-Relationship-Modell wurde Ihnen zur Verfügung gestellt, um die Aufträge eines Reisebüros zu verwalten. Zusätzlich nennt Ihnen der Auftraggeber noch folgende Anforderungen: Zu Kunden sollen Vor- und Nachname gespeichert werden. Zu privaten Kunden merken Sie sich zusätzlich das Geburtsdatum, zu Einzelinhaberbetrieben die Branche. Adressen bestehen aus PLZ, Ort, Straße und Hausnummer. Rabattstufen haben eine Bezeichnung und einen Prozentsatz. Zu Aufträgen müssen Sie sich ein Datum und den Betrag des Auftrags speichern. Für die Reiseziele vergeben die Veranstalter einen eindeutigen Buchungsschlüssel, außerdem sollen Land und Name des Ziels gespeichert werden. Weiterhin möchten Sie speichern können, ob bei einem Auftrag für ein bestimmtes Reiseziel eine Sonderleistung (z.B. die Beantragung eines Visums) in Anspruch genommen wird. LÖSUNG TABELLEN: Tabellenname Adresse Kunde PrivaterKunde Einzelinhaberbetrieb Rabattstufe Auftrag Reiseziel AuftragReiseziel Primärschlüssel AdresseNr KundeNr KundeNr KundeNr RabattstufeNr AuftragNr Buchungsschlüssel AuftragNr, Buchungsschlüssel Weitere Attribute PLZ, Ort, Straße, Hausnummer, KundeNr Vorname, Nachname Geburtsdatum Branche, Rabattstufe (häufig) Bezeichnung, Prozentsatz Datum, Betrag, KundeNr Land, Name Sonderleistung THEATER-AUFGABE Ort 1..1 0..* Kategorie Theaterstück 0..* Verleih 0..* Leihrequisite 1..1 0..1 Requisite 0..* Eigene Requisite 0..* Oben stehendes Entity-Relationship-Modell wurde Ihnen zur Verfügung gestellt, um Requisiten eines Theaterstücks zu verwalten. Zusätzlich nennt Ihnen der Auftraggeber noch folgende Anforderungen: Theaterstücke besitzen einen Namen und einen Regisseur. Zu den Orten, an denen Theaterstücke aufgeführt werden, benötigen Sie den Ortsnamen, die Straße und die Hausnummer. Requisiten besitzen eine Bezeichnung, eigene Requisiten zusätzlich ein Anschaffungsdatum. Zu Leihrequisiten wird die Leihfrist gespeichert. Zum Verleih werden der Name und die Adresse gespeichert. Kategorien sind z.B. „Kleidung“, „Mobiliar“, oder „Rüstzeug“, hierzu wird eine Bezeichnung gespeichert. Weiterhin soll gespeichert werden, in welchem Zeitraum (Beginn, Ende) ein Theaterstück eine Requisite benötigt. LÖSUNG TABELLEN: Tabellenname Ort Theaterstück Requisite Primärschlüssel OrtNr TheaterstückNr RequisiteNr Kategorie Verleih Leihrequisite KategorieNr VerleihNr RequisiteNr Weitere Attribute Nam, Straße, Hausnummer Name, Regisseur, OrtNr Bezeichnung, KategorieNr (kommt häufig vor) Bezeichnung Name, Adresse Leihfrist, VerleihNr EigeneRequisite TheaterstückRequisite RequisiteNr TheaterstückNr, RequisiteNr Anschaffungsdatum Beginn, Ende STUDIENGANG-AUFGABE Studienrichtung Studiengang 0..* 1..1 0..* 1..* Prüfung Modul 1..* 1..* 0..1 0..* Klausur hatTeilmodul Hausarbeit Oben stehendes Entity-Relationship-Modell wurde Ihnen zur Verfügung gestellt, um Studiengänge zu verwalten. Zusätzlich nennt Ihnen der Auftraggeber noch folgende Anforderungen: Studiengänge haben eine Bezeichnung und ein Datum, zu dem sie erstmals angeboten wurden. Studienrichtungen haben auch eine Bezeichnung. In Modulen werden die Bezeichnung, die SWS und die Credits gespeichert. Für alle Prüfungen wird die Anzahl der zulässigen Versuche gespeichert. Klausuren besitzen zusätzlich eine Länge, Hausarbeiten eine Seitenzahl. LÖSUNG TABELLEN: MITARBEITEREINSATZ-AUFGABE erhält Zulage 0..* 0..* 0..1 Mitarbeiter 1..* Einsatzgebiet 0..* 1..1 InternesEG ExternesEG Vergütungsgruppe 1..1 1..* Gehalt Oben stehendes Entity-Relationship-Modell wurde Ihnen zur Verfügung gestellt, um die Mitarbeiter eines Unternehmens zu verwalten. Zusätzlich nennt Ihnen der Auftraggeber noch folgende Anforderungen: Zu Mitarbeitern speichern Sie Nachname und Vorname. Vergütungsgruppen werden eindeutig und unveränderlich durch einen Buchstaben gekennzeichnet, für sie werden zusätzliche Bezeichnungen gespeichert. Gehälter bestehen aus einem Betrag, einem Anfangsalter und einem Endalter. Einsatzgebiete haben auch eine Bezeichnung, bei externen Einsatzgebieten wird zusätzlich die maximale Entfernung vom Firmenstandort gespeichert, bei internen Einsatzgebieten der Gebäudeteil. Erhält ein Mitarbeiter eine Zulage für einen Einsatz in einem Einsatzgebiet, so müssen für diese Zulage zusätzlich ein Betrag und ein Datum gespeichert werden. LÖSUNG TABELLEN: Tabellenname Mitarbeiter Vergütungsgruppe Gehalt Primärschlüssel MitarbeiterNr Buchstabe GehaltNr Einsatzgebiet EinsatzgebietNr InternesEG ExternesEG MitarbeiterEinsatzgebiet (für Beziehung „erhält Zulage“) EinsatzgebietNr EinsatzgebietNr MitarbeiterNr, EinsatzgebietNr DOKUMENTENVERWALTUNG-AUFGABE Weitere Attribute Vorname, Nachname, Buchstabe Bezeichnung Betrag, Anfangsalter, Endalter, Buchstabe Bezeichnung, MitarbeiterNr (kommt häufig vor) Gebäudeteil MaxEntfernung Betrag, Datum 0..* 1..1 Bereich Rolle 1..1 1..* 0..* 0..* Dokument Benutzer 0..1 greift zu 0..* Computer Oben stehendes Entity-Relationship-Modell wurde Ihnen zur Verfügung gestellt, um Dokumente zu verwalten. Zusätzlich nennt Ihnen der Auftraggeber noch folgende Anforderungen: Zu Benutzern werden Vor- und Nachnamen gespeichert. Computer besitzen neben dem Namen eine eindeutige und unveränderliche Inventarnummer. Dokumente haben einen Namen und eine Größe. Zu (Dokumenten-)bereichen und (Benutzer-)rollen speichern wir ebenfalls jeweils einen Namen. Auf Grund von Versetzungen und Beförderungen kann die Rolle eines Benutzers geändert werden, daher soll auch gespeichert werden, in welchem Zeitraum (Beginn und Ende) ein Benutzer einer Rolle zugeordnet ist. LÖSUNG TABELLEN: Tabellenname Bereich Rolle Dokument Computer Benutzer RolleBenutzer DokumentComputerBenutzer Primärschlüssel BereichNr RolleNr DokumentNr Inventarnummer BenutzerNr RolleNr, BenutzerNr DokumentNr, Inventarnummer, BenutzerNr Weitere Attribute Name, RolleNr Name Name, Größe, BereichNr Name, BenutzerNr (Beziehung kommt häufig vor) Vorname, Nachname Beginn, Ende