Information ausblenden
Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, MariaDB, Oracle, Sql-Server, Postgres, Access uvm

Wie setzte ich das Sinnvoll um?

Dieses Thema im Forum "Datenmodellierung, Datenbank-Design" wurde erstellt von CaBoTe, 10 Dezember 2013.

  1. CaBoTe

    CaBoTe Neuer Benutzer

    Nehmen wir mal an, ich produziere Spiele Konsolen. Im Garantiefall habe ich zertifizierte Elektromärkte, welche die Konsole reparieren dürfen. Bedeutet wenn ein Kunde mich anruft, kann ich diesen an einen zertifizierten Reparateur verweisen.
    Demnach müsste es die Tabellen: Kunde und CertRep geben oder so ähnlich.
    Was ist aber nun, wenn ein Kunde gleichzeitig auch ein CertRep ist?

    Vor dem Problem steh ich nämlich grade. Beim Versand von Repteilen an einen CertRep muss die Adresse via FK beim Sendungsdatensatz hinterlegt sein. Wenn ich dort einfach plötzlich die Kundennummer eintrage, habe ich bei der Verknüpfung ein Problem, denn die Sendungsadresse ist eine FK ID und kann sowohl aus der Tabelle Kunde, als auch aus der Tabelle CertRep stammen.

    Wie löse ich soetwas Sinnvoll?
     
  2. ukulele

    ukulele Datenbank-Guru

    Die relational logische Lösung wäre du differenzierst nicht nach Kunden und CertRep sondern hast eine Tabelle für Unternehmen denn eigentlich sind deine beiden jetigen Tabellen ein und das Selbe: Die Entität Unternehmen oder Organisation mit Atributen für eine Adresse oder Zuordnungen mehrerer Adressen.

    Um jetzt zwischen Kunden und CertRep zu differenzieren kannst du entweder, simpel mit einem Flag in der Tabelle arbeiten oder, wenn du mehr Informationen wie z.B. Datum von bis speichern willst machst du eine weitere Tabelle mit FK auf Unternehmen und der Klassifizierung oder Gruppe oder wie auch immer man diese Eigenschaft nennen will.
     
  3. CaBoTe

    CaBoTe Neuer Benutzer

    Hallo und danke dir, das Prinzip finde ich sehr gut. Wird zwar ein großer Umstellungsaufwand, aber Designtechnisch empfinde ich es auch als logischer
     
  4. ukulele

    ukulele Datenbank-Guru

    Bei einem laufenden System kann man natürlich auch andere Lösungen suchen aber je mehr dieser "Klassifizierungen" du hast desto weniger Sinn macht es, in Tabellen zu trennen. Auch ist die Adressverwaltung und Verarbeitung irgendwie doppelt etc.
     
Die Seite wird geladen...

Diese Seite empfehlen

  1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden