Hallo,
also ich grüble jetzt schon lange Zeit über mein Datenbankdesign, aber irgendwie drehe ich mich gedanklich im Kreis. Vielleicht kann mich jemand von Euch "inspirieren".
Ich entwickle eine einfache Know-how und Fehlerdatenbank für Kunden und Mitarbeiter. Es gibt verschiedene Produkte, und ich beginne exemplarisch mit einem Bestimmten, aber es soll dann übertragbar / erweiterbar sein...
Es gibt eine Menge von Problemlösungen, die zunächst alle angezeigt werden, aber dann mit folgendem Prozedere eingeschränkt werden sollen.
Es soll einen Fragekatalog mit Antworten geben, durch den der Anwender sequentiell geleitet wird. Als erstes zum Beispiel die Frage:
Welches Produkt? A, B oder C?
Wenn der Kunde nun Produkt A auswählt sollen alle folgenden Fragen sich auf eben dieses Produkt beziehen. Dann z.B.:
Ist Option XYZ vorhanden? (ja / nein)
Dann soll z.B. eine Frage gestellt werden, die aus beiden bisherigen Antworten resultiert. Außerdem soll die Menge der auf die nächste Frage hin präsentierten Antworten durch die bisherigen Antworten eingeschränkt sein.
Könnt Ihr mir folgen? Ist schwer, meine Gedanken in Worte zu fassen und nichts Wichtiges zu vergessen!
----------------------------------
Also mein Problem ist Folgendes:
Wie kann ich die Beziehung zwischen Fragen und Antworten anlegen? Es ist ja eine m:n-Beziehung. Also eine Verbindung über eine zusätzliche Tabelle ist mir schon klar, aber ich muss ja irgendwie dann immer die bisher gegebenen Antworten berücksichtigen / speichern. Wie mache ich das bloß?
Und dann muss ich noch die Problemlösungen (das Ergebnis für den Kunden aus der Fragerei...) irgendwie mit den Antworten auf die Fragen verknüpfen, damit bei einer bestimmten Antwort nicht mehr zutreffende Lösungen ausgeblendet werden, gell?
Das ganze statisch für dieses eine Produkt umzusetzen wäre ja kein Problem (denke ich im Augenblick), aber die Erweiterbarkeit (anderes Produkt --> andere Fragen, andere Anzahl von Fragen, völlig andere Merkmale der Lösungen...) bereitet mir Sorgen.
Über ein Frontend (Java-Applet/Servlet) soll es außerdem möglich sein, außer Abfragen der beschriebenen Art auch die ganze Geschichte zu erweitern, also Lösungen einzufügen, Fragen / Antworten hinzuzufügen, etc.
Bei mir dreht sich gerade alles...
Kann mir jemand Tipps geben oder meine Gedanken sortieren?
Gruß Nicolas