1. Liebe Forumsgemeinde,

    aufgrund der Bestimmungen, die sich aus der DSGVO ergeben, müssten umfangreiche Anpassungen am Forum vorgenommen werden, die sich für uns nicht wirtschaftlich abbilden lassen. Daher haben wir uns entschlossen, das Forum in seiner aktuellen Form zu archivieren und online bereit zu stellen, jedoch keine Neuanmeldungen oder neuen Kommentare mehr zuzulassen. So ist sichergestellt, dass das gesammelte Wissen nicht verloren geht, und wir die Seite dennoch DSGVO-konform zur Verfügung stellen können.
    Dies wird in den nächsten Tagen umgesetzt.

    Ich danke allen, die sich in den letzten Jahren für Hilfesuchende und auch für das Forum selbst engagiert haben. Ich bin weiterhin für euch erreichbar unter tti(bei)pcwelt.de.
    Dismiss Notice

Datenbankmodell ERM mit Visio

Discussion in 'Office-Programme' started by modernSkill, Oct 31, 2016.

Thread Status:
Not open for further replies.
  1. modernSkill

    modernSkill Kbyte

    Hallo,

    als Übung soll ich für ein Facility-Management Unternehmen eine Datenbank erstellen. Wenn z.B. ein Mitarbeiter im Programm angibt, dass in der Liegenschaft 1, Gebäude 2 und Raum 3 die Toilette kaputt ist und ein zuständiger Mitarbeiter gibt den Auftrag an einen zuständigen Hausmeister weiter, der sich dann dadrum kümmert.

    Ich hab das Modell zunächst mit Visio aufgebaut und würde gerne eure Meinung dazu hören, ob dies so funktionieren würde, wie beschrieben.
     

    Attached Files:

  2. Odie0506

    Odie0506 Kbyte

    Die Fremdschlüssel sind IMHO in den falschen Tabellen.
    Geschoss: sollte die Eigenschaften des Geschosses wiedergeben und seinerseits einen Verweis auf das zugehörige Gebäude enthalten, nicht auf die Raum-ID.
    Im Raum kommt dann die Geschoss-ID als Fremdschlüssel.
    Ebenso in den anderen Tabellen.

    Bei deiner Darstellung muss für jeden Raum ein neuer Datensatz zum Geschoss erstellt werden. Das erzeugt redundante Daten, die du sicherlich vermeiden willst.
    Zu einem Geschoss-Datensatz gehören mehrere Raum-Datensätze (1:n-Verknüpfung). Du hast hier eine 1:1-Verknüpfung, die für jeden Raum ein eigenes Geschoss benötigt.....
     
  3. modernSkill

    modernSkill Kbyte

    Danke für den Tipp.

    Dann verstehe ich die Pfeile ehrlich gesagt gar nicht. Durch die Liegenschaft soll ich auf mein Gebäude kommen, dann auf mein Geschoss und dann auf meinen Raum. So verstehe ich die Pfeile. Sogesehen müsste ich vom Raum in die Richtung zur Liegenschaft gehen?
     
  4. Odie0506

    Odie0506 Kbyte

    Die Pfeile symbolisieren 1:n-Beziehungen. 1 Datensatz auf der Seite, wo der Pfeil liegt, gehört zu n Datensätzen auf der gegenüberliegenden Seite.
    In deiner Zeichnung bedeutet das:
    Raum - Geschoss: Ein Raum kann in mehreren Geschossen vorhanden sein, aber ein Geschoss hat maximal einen Raum.
    Geschoss - Gebäude: Ein Geschoss kann in mehreren Gebäuden vorhanden sein, aber ein Gebäude hat maximal ein Geschoss.
    Gebäude - Liegenschaft: Ein Gebäude kann zu mehreren Liegenschaften gehören, aber eine Liegenschaft hat maximal ein Gebäude.
    Liegenschaft - Mitarbeiter: Eine Liegenschaft kann mehreren Mitarbeitern zugeordnet sein, aber ein Mitarbeiter hat immer nur max. eine Liegenschaft.
    Abteilung - Mitarbeiter: Eine Abteilung kann mehrere Mitarbeiter haben, aber ein Mitarbeiter nur einer Abteilung angehören. (Richtig!)
    Mitarbeiter - Auftragsverwaltung: Eine Mitarbeiter kann mehreren Verwaltungs-IDs zugeordnet werden, aber eine Verwaltungs-ID nur einem Mitarbeiter (Richtig)
    Auftragsverwaltung - Auftrag: Ein Auftrag kann zu mehreren Verwaltungs-IDs zugeordnet werden. (Wenn je Verwaltungs-ID immer nur ein Auftrag möglich ist, sollten die beiden Tabellen zusammengeführt werden.)
    Auftrag - Kunde: Ein Kunde kann mehrere Aufträge haben, ein Auftrag jedoch nur einen Kunden (Richtig)
    Kunde - Adresse: Ein Kunde kann mehrere Adressen haben, eine Adresse wird genau einem Kunden zugeordnet. (Wenn Kunden immer nur eine Adresse haben, sollten die beiden Tabellen zusammengeführt werden. Ansonsten ist die Aufteilung so richtig.)
    Liegenschaft - Auftrag: (ohne Verknüpfungspfeil) Ein Auftrag kann zu mehreren Liegenschaften gehören, eine Liegenschaft hat jedoch nur einen Auftrag.

    (Unterstrichene Verknüpfungen sind ok, der Rest nicht.)
    Bei 1:1- oder auch n:m-Verknüpfungen sehen die Linien ein wenig anders aus. (Je nach verwendetem DBMS z.B. Pfeile an beiden Enden oder gar keine Pfeile.)
    So gesehen sucht man später auch nicht nach der Liegenschaft, die vielleicht ein Gebäude mit einem spezifischen Raum auf einem bestimmten Geschoss hat, sondern einen Raum auf einem bestimmten Geschoss in einem vorgegebenen Gebäude auf der gewünschten Liegenschaft.
     
  5. modernSkill

    modernSkill Kbyte

    Also wenn ich bei Geschoss jetzt die ID als PK mache, macht Visio automatisch in alle anderen Kästchen Geschoss als PK & FK rein, wieso?
    Ich hab es jetzt von den Räumen bis zur Liegenschaft verstanden, aber die Verbindung dann zu den Mitarbeitern verstehe ich nicht. So wie es jetzt ist ist die Liegenschaft das Elternteil und die Mitarbeiter die Kinder. Ich hätte gerne eine n:m Verbindung, aber irgendwie klappt das nicht mit Visio. Sprich, dass eine Liegenschaft mehrere Mitarbeiter haben kann und ein Mitarbeiter (der Hausmeister) zu mehreren Liegenschaften gehören kann.

    Wenn ich die Pfeile bei Liegenschaft-Mitarbeiter austausche, würde es ja heißen, dass ein Mitarbeiter mehrere Liegenschaften hat, aber eine Liegenschaft nur einen Mitarbeiter.

    Bei Kunde - Auftrag kann es ja auch nicht stimmen. Auftrag ist das Elternteil, Kunde das Kinderteil. Heißt also wie ich es jetzt habe, dass ein Auftrag mehrere Kunden haben kann.

    Ich merk schon, ich hätte ein anderes Wahlpflichtfach belegen sollen :D
     
    Last edited: Oct 31, 2016
  6. chipchap

    chipchap Ganzes Gigabyte

    Das heißt wohl relationale Datenbank.
    Und bei den Hausaufgaben fragt man mal die Kommilitonen ... .
     
  7. kalweit

    kalweit Hüter der Glaskugel

    Besser ist das! Leute aus der Praxis schlagen eh die Hände beim herrschenden Normalisierungswahn überm Kopf zusammen. Das bekommt man aber keinem Theoretiker ins Hirn gemeißelt...
     
  8. modernSkill

    modernSkill Kbyte

    Es ist keine Hausaufgabe, sondern nur eine Übung die ich bekommen hab. Wir sind nur 3 Leute und haben alle eine andere Übung bekommen, so dass wir uns ergänzen sollen.

    Habs jetzt aber durch Literatur gelöst, danke.
     
Thread Status:
Not open for further replies.

Share This Page