Welche Art von Tabellen würde ich für die folgende in MS Access 2003 erstellte Personendatenbank benötigen?

504
GwenKillerby

Es ist eine Datenbank über Schauspieler und Filme. Ich möchte es auch mit ihrem Alter füllen, damit ich die Fragen beantworten kann:

  • In welchem ​​Alter haben sie ihren letzten Film gedreht?
  • Wie alt ist das Durchschnittsalter ihrer Filme?

usw. Dies sind meine vorgeschlagenen Tabellen: Schauspieler-Tabelle mit den Feldern:

  • Name
  • Alter
  • Name der Filme
  • Jahr der Filme gemacht

ein Filmtisch mit den Feldern:

  • Name der Filme
  • Jahr der Filme gemacht
  • Namen von Schauspielern in diesem Film

Was wäre das Beste, um es als Schlüssel zu verwenden?

C. Dann würde ich wahrscheinlich eine Verknüpfungstabelle mit den Feldern brauchen:

  • Schauspieler
  • Filme

Für alle 3 Tabellen: Welches ist das beste Feld, das als Schlüssel verwendet werden kann?

Meine Anschlussfrage lautet: Welche anderen Tabellen würde ich brauchen?

Und Access 2003 ist der einzige, für den der Client eine Lizenz besitzt. Arbeit der Liebe, freiwilliges Zeug.

1
Ihre Kritik erscheint unsicher, wenn man bedenkt, dass Mokubai alle meine Fragen ziemlich genau beantwortet hat. Und genau. Aber ich bin aufgeschlossen, also: Wie sollte ich die Frage meiner Meinung nach weniger breit machen? Ich frage wirklich, ich hoffe du kannst mir helfen. Bitte geben Sie an, wo ich genauer sein sollte. Fazit: Wie denkst du kann ich die Frage und ihre Teilfragen verbessern? Wenn Sie nicht wissen, wie ich das schaffen kann, bitte ich Sie, diese Frage zu beantworten. Bitte halten Sie die Vergangenheit nicht gegen mich. Das ist Vorurteil. Vielen Dank! GwenKillerby vor 6 Jahren 0
natürlich meinte ich auf AUS halten. Bitte entfernen Sie die Warteschleife. GwenKillerby vor 6 Jahren 0

1 Antwort auf die Frage

0
Mokubai

Für mich wären das drei verschiedene Tabellen.

  1. Schauspieler:
    • actorTableKey
    • Name des Schauspielers
    • Geburtsdatum des Schauspielers (Alter kann dynamisch berechnet werden, indem DOB vom aktuellen Datum abgezogen wird)
    • Schauspieler-Biografie
    • Keine Filmliste hier
  2. Filme
    • filmTableKey
    • Name des Films
    • Filmbeschreibung
    • Filmveröffentlichungsdatum
    • Keine Schauspielerliste hier
  3. Die Verknüpfungstabelle
    • actorTableKey
    • filmTableKey

Die Verknüpfungstabelle listet einfach actorTableKeys und ihre verwandten filmTableKeys auf.

Dann können Sie groupby actorTableKeyin das tun Linking Table, um eine Liste von Film-IDs zu erhalten, die jedem Schauspieler entsprechen, und umgekehrt groupby filmTableKey, um Schauspieler per Film zu erhalten.

Mein Zugriff ist etwas verrostet, daher bin ich mir der genauen Abfrage nicht sicher, aber für mich ist dies der sauberste Weg, dies zu tun, ohne die Schauspielertabelle jedes Mal aktualisieren zu müssen, wenn Sie einen Film hinzufügen oder umgekehrt.

Dies ist eine Viele-zu-Viele-Beziehung, bei der der Zugriff eine Junction-Tabelle aufruft .

@ Mokubai: Ich bin mit dieser Antwort zufrieden, sie ist ziemlich ausreichend, aber ich hoffe natürlich, dass jemand, der auf Access 2003 aktueller ist, diese verbessern kann, wo er / sie Unsicherheit äußert. GwenKillerby vor 6 Jahren 1