Announcement

Collapse
No announcement yet.

einfache Filmdatenbank anlegen

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • einfache Filmdatenbank anlegen

    Hallo zunächst einmal,

    und schön dass es solch ein Forum gibt.

    Ich würde gern für meinen server pc (auf dem sich eine kleine Filmsammlung befindet) eine Filmdatenbank anlegen

    folgende Daten soll die Datenbank enthalten:
    Filmstudio,Titel, FSK, Prod-jahr(...zwei drei weiter punkte...),

    genre und Schauspieler.

    Ich habe bislang versucht eine Tabelle in einer Datenbank anzuegen,
    nun ist es aber so, dass ich bei manchen Filmen eine unterschiedliche Zahl von Schauspielern habe, bzw. es gibt mehrere Genre zu einem Film.


    Wie sollte man die Datenbank strukturieren. Ich hoffe dass ist keine allzu große Newbie-Frage.

    Danke für Antworten im voraus

    gruß
    meisterfisch

  • #2
    Hallo,

    lies dich mal in das Thema "Datenbanknormalisierung" ein und dann ist die Lösung dafür trivial.

    Kurz: die m : n Beziehung wird aufgebrochen in eine 1 : m und eine 1 : n Beziehung und mittels einer dritten Tabelle verbunden.

    mfG Gü
    "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

    Comment


    • #3
      Originally posted by gfoidl View Post
      lies dich mal in das Thema "Datenbanknormalisierung" ein und dann ist die Lösung dafür trivial.
      Literaturvorschlag: Einführung in SQL, darin auch mit einem Kapitel zur Normalisierung. Jürgen

      @Gü

      Comment


      • #4
        [offtopic]

        Hallo Jürgen,

        bei mir ist dein Literaturvorschlag mit obigem Suchbegriff + SQL der 1. Google-Treffer, daher hab ich ihn nicht direkt verlinkt.

        mfG Gü

        [/offtopic]
        "Any fool can write code that a computer can understand. Good programmers write code that humans can understand". - Martin Fowler

        Comment


        • #5
          Hallo,

          danke für die Antworten.
          Ja ich habe mir gerade ein paar Artikel durchgelesen -- mir raucht der Kopf. es macht anscheinend Sinn Tabellen auszulagern. Aber so gaanz kann ich das noch nicht auf meinen Fall beziehen (bin wohl Absoluter-Newbie).



          Wenn ich jetzt eine Tabelle Schaupieler anlege, dort kommt ein Schauspielername rein mit einem Primäschlüssel (die ID die incrementiert wird). Diese Zuordnung ist ja eindeutig.

          Jetzt habe ich eine zweite Tabelle filme, in der zumindest Titel, Laufzeit usw. in Spalten ist. Wie bekomme ich das bei der Eingabe eines Filmdatensatzes hin, den (oder die )Schauspieler einzugeben.

          Ich hoffe die Frage ist nicht unverständlich gestellt, aber das verstehe ich nicht???


          Danke für Antworten im voraus


          Gruß
          meisterfisch

          Comment


          • #6
            Originally posted by meisterfisch View Post
            Jetzt habe ich eine zweite Tabelle filme, in der zumindest Titel, Laufzeit usw. in Spalten ist. Wie bekomme ich das bei der Eingabe eines Filmdatensatzes hin, den (oder die )Schauspieler einzugeben.
            Du brauchst eine dritte Tabelle, die Schlüsselfelder für Filme und Schauspieler hält. Hier trägst Du dann die Verknüpfungen zwischen Film und Schauspielern ein. Ein solches Verfahren ist üblich bei einer m:n Relation, darüber hast Du bestimmt schon gelesen, wenn Du Dir den Link angeschaut hast.

            Aber Achtung: Wenn Du wie beschrieben einen neuen Film anlegst und direkt die Schauspieler zuordnen willst, gibt es einen kleinen Stolperstein.
            Das Anlegen/Speichern des Filmsatzes muss (mindestens hinter dem Vorhang/Maske) als erster Schritt erfolgen, damit Du die neue PK ID des Films in der Zuordnungstabelle dann schon kennst. Ähnlich bei Schauspielern, die nicht im Bestand sind. Erst anlegen, dann zuordnen.
            Gruß, defo

            Comment


            • #7
              Hallo,
              danke zunächst für die Antwort. Ich glaube ich bin wirklich ziemlich anfängermäßig drauf. Ich habe den Artikel gelesen, habe aber nicht alles verstanden -- das Aufteilen der Tabelle schon, also die Idee die dahinter steckt (übung macht den meister).
              Es soll ja nur für mich sein, wenn die Datenbank nicht perfekt ist, ist das nicht so schlimm.


              2 Fragen ergeben sich jetzt:
              Du brauchst eine dritte Tabelle, die Schlüsselfelder für Filme und Schauspieler hält. Hier trägst Du dann die Verknüpfungen zwischen Film und Schauspielern ein.
              Also angenommen -was ja leicht ist - ich habe zwei Tabellen, eine mit Filme und Id ( kurz Fid) und eine andere Tabelle mit Schauspieler und ID ( kurz Sid).
              Jetzt ist mir die praktische Umsetzung, wie ich das in der dritten Tabelle zuordne nicht klar.
              Wähle ich aus dem datenbestand Filme einen Film aus und "klicke" dann einen Schauspieler an und speichere den Datensatz, bzw. nur die dazugehörigen Fid und Sid - durch welche eingabemethode sollte ich dann die Schauspieler auflisten?


              2 Frage
              Ähnlich bei Schauspielern, die nicht im Bestand sind. Erst anlegen, dann zuordnen.
              Hier auch eher praktisch gefragt, wenn ich die Tabelle Schauspieler anlege, wie kann ich dann doppelte Eingaben vermeiden, da ich mir ja nicht merke,welchen Schauspieler ich schon eingegeben habe- Liste durchschauen ist wohl eher auch unpraktisch.


              Danke im voraus
              Gruß
              meisterfisch

              Comment


              • #8
                Du benötigst eine dritte Tabelle:

                Tabelle 1: Film
                Code:
                FID  Titel
                --------------------------------------------
                1    "Jagd auf Roter Oktober"
                2    "Goldfinger"

                Tabelle 2: Schauspieler
                Code:
                SID  Name
                --------------------------------------------
                10   "Sean Connery"
                20   "Alec Baldwin"
                30   "Halle Berry"
                Tabelle 3: Die Beziehung zueinander
                Code:
                FID   SID 
                --------------------------------------------
                1     10
                1     20
                2     10
                Die SID's der Schauspieler können natürlich auch 1,2,3 sein, ich habe die anderen Nummern nur genommen damit es für dich übersichtlicher ist.

                Gruss

                Comment


                • #9
                  Hallo,

                  danke für die ausführliche Antwort,
                  Jetzt ist mir die Vorgehensweise klar geworden.

                  gruß
                  meisterfisch

                  Comment

                  Working...
                  X