Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo zusammen,

ich hab folgendes Problem und zerbrech mir schon seit Stunden den Kopf. Es geht um folgendes Datenbankdesign.

Ich hab folgende Tabellen (vereinfacht):

  1. Kategorien
  2. Objekte
  3. Eigenschaften (könnte auch Tags sagen)

Sie stehen wie folgt in Beziehung:

  • Jede Kategorie hat mehrere Objekte und jedes Objekt eine Kategorie (1:n)
  • Jede Kategorie hat mehrere Eigenschaften und jede Eigenschaft mehrere Kategorien (n:m)
  • Jedes Objekt hat mehrere Eigenschaften definiert aus den Eigenschaften der Kategorie(n:m)

Im Klartext, jede Kategorie hat diverse Eigenschaften, die mit Anlegen einer Kategorie festgelgt werden

Kategorie_ID | Eigenschaft_ID (Bewegungstabelle)

Kategorie A hat zum Beispiel Preis, Größe, Struktur.

Kategorie B hat nur Preis und Farbe.

So weit ist es nix Besonders und eine einfach n:m Bezeihung :schlaf:

Machen wir das ganze mal den Faktor 10 anrpuchsvoller.

Ein neu angelegtes Objekt X wird nun der Kategorie A zugewiesen und soll nun dessen Eigenschafen "erben".

  • Objekt
    • Name: Objekt X

    [*]Kategorie

    • Name: Kategorie A
    • Eigenschaften
      • Preis
      • Größe
      • Struktur

Mein Ziel ist es jetzt in einer 5. Tabelle die Werte dafür zu speichern.

Objekt_ID - Eigenschaft_ID - Wert

Beispiel:

Objekt X | 1 | 300€

Objekt X | 2 | Riesig

Ich hoffe ich konnte das einigermaßen verständlich ausdrücken. So meine Frage nun:

1. Wie selektiere ich alle Eigenschaften die ein Objekt haben darf in Abhängigkeit der ersten Bewegungstabelle?

2. Ist das ein gutes Datenbankdesign?

Mit freundlichen Grüßen

Wenn ich das richtig verstehe, dann hast Du letztendlich so etwas wie eine Vererbung, d.h. eine Hierarchie.

Wir haben ein Objekt P und ein Objekt C, D und F. Wenn jetzt C, D und F von P erben, dann ist das kein Problem, denn diese Objekte haben genau einen Parent, nämlich P. Wenn Du jetzt aber noch zu lässt, dass z.B. C von D erben kann, dann ist das auch eine hierarchiche Beziehung, aber Du musst dabei natürlich verhindern, dass C von D und D von C erben kann.

Ich würde mich da generell mal die UML 2 Spezifikation anschauen, da sind nämlich solche Strukturen abgebildet. Das datenbanktechnisch abzubilden ist auch nicht schwer, denn man muss eben nur die Hierarchie mit abbilden und eben diverse Verbindungen nicht zulassen.

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.