Datenbank SQL sinnvolle Aufteilung von Attributen?
Kurz gesagt ich habe eine Datenbank zu Kinos erstellt. Unterteilt wird unter anderem in Filme und Filme haben immer eine ID, einen Namen, einen Datum, eine Uhrzeit und einen Preis. Ich habe eine Tabelle erstellt mit dem Namen "Filme" und die oben genannten Attribute hinzugefügt. Jetzt kommt aber das Problem, das es unterschiedliche Preisklassen gibt. Zum Beispiel ein Erwachsener zahlt für den Eintritt 15€, ein Kind unter 12 Jahren jedoch nur 6€. Schwerbehinderte Personen zahlen 10€ und Personen mit Geburtstag zahlen nur die Hälfte vom Ticketpreis, also 7,50€. Wie kann ich all dieses differenzieren? Sollte ich am besten eine neue Tabelle erstellen und all die Dinger unter dieser Tabelle auflisten und später dann per referenz also mit einem foreign key mir die Daten aus der anderen Tabelle holen oder wie könnte ich da theoretisch rangehen?
2 Antworten
Der Tabellle "Film" das alles zuzuschreiben ist nicht korrekt.
Erstelle am besten eine weitere Tabelle "Vorstellung", mit Uhrzeit, Preistarifen, Film (Foreign Key) usw.
Was ein Gast konkret zahlt, sollte in einer weiteren Tabelle erfasst werden (z.b. mit dem Namen Tickets). Auch die einzelnen Preistarife sollten eine eigene Tabelle bekommen.
wie könnte ich da theoretisch rangehen?
Das hängt davon ab, ob die Preise relevante Suchkriterien sind ("zeige alle Filme/Kinos, bei denen der Eintrittspreis kleiner als 12 Euro ist ...") oder ob das einfach eine Information ist, die zusätzlch gelistet werden soll, ohne ein Suchkriterium zu sein.
Alex