Zum Inhalt springen

Primär und Fremdschlüssel


Lodorvonhal

Empfohlene Beiträge

Hallo. Ich bin neu hier und nach endloser Suche im Netz wende ich mich an Euch.

Bin momentan dabei ein Spiel zu entwerfen (mit nem Kumpel) und erstelle gerade meine Datenbank.

Ich arbeite mit JavaSlick2D und H2 Database Engine.

Ich habe eine

tabelle Spieler mit SpielerID

tabelle Gesundheitszustand mit GesundheitID

jeder der beiden ID ist für sich in seiner Tabelle ein Primary Key. So.

nun habe ich eine Zuordnungstabelle zwischen den beiden Tabellen

tabelle SpielerhatGesundheit

mit

SpielerID

GesundheitID

beide logischerweise als foreign Key der jeweiligen tabelle

sonst ist nix in dieser tabelle

Nun zu meiner Frage.

Ist es sinnvoll beide als Primary key zu machen oder keinen?

Beim Erstellen der tabelle (oder auch beim ändern) kann ich keine 2 Primärschlüssel anlegen. weis zum nicht wie.

Weis jemand rat ob ich überhaupt ein primärschlüssel brauche oder brauche ich in dem fall keinen.

Danke schonmal für die Mühe.

MFG

Patrick

Link zu diesem Kommentar
Auf anderen Seiten teilen

Hi Klotzkopp, danke für deine Antwort.

Oh gut, da habe ich vergessen noch einiges zu erwähnen. Gesundheitszustand ist nicht alleine die HP sondern darunter ist zu verstehen das es verschiedene Effekt geben kann. zb. Verzauberung Verfluchung ect.

Der Gesundheitzustand holt sich die Infos aus einer tabelle mit dem namen Effekt.

Also ist also tatsächlich eine n:m bezihung auch wenn blöd ausschaut (ist blöd forumuliert ^^)

Abgesehen vom dem Blöden Beispiel habe ich noch andere Zuordungstabellen mit n:m und wollte halt nur fragen wie ich das mit den Key's so handhaben sollte.

habe mittlerweile meine Fehler gefunden warum ich keine 2 PK anlegen konnte. Simpler Sytaxfehler XD. egal

Also seh ich das dann richtig, das ich in meiner n:m zuordungstabelle jeweils 2 FK und einen zusammengesetzten PK (also 2 PK) haben kann? und das ganzen dann auch noch funst?

Link zu diesem Kommentar
Auf anderen Seiten teilen

Gesundheitszustand ist nicht alleine die HP sondern darunter ist zu verstehen das es verschiedene Effekt geben kann. zb. Verzauberung Verfluchung ect.
Dann ist das Ordnung (bis auf die Namensgebung ;))

Also seh ich das dann richtig, das ich in meiner n:m zuordungstabelle jeweils 2 FK und einen zusammengesetzten PK (also 2 PK) haben kann?
Wenn die PK der beiden Elterntabellen jeweils nur aus einem Feld bestehen, ja. Ansonsten natürlich mehr.
Link zu diesem Kommentar
Auf anderen Seiten teilen

Nun zu meiner Frage.

Ist es sinnvoll beide als Primary key zu machen oder keinen?

Leg eine eigene Spalte an, die dann der Pk wird. Diese Spalte befüllst Du z.B. mit einem Autowert.

Beim Erstellen der tabelle (oder auch beim ändern) kann ich keine 2 Primärschlüssel anlegen. weis zum nicht wie.

Eine Tabelle hat immer nur einen PK. Ein PK muss immer ein rein technisches Feld ohne jeglichen fachlichen Bezug sein, ansonsten kannst in größere Probleme laufen. Du kannst einen PK aus mehreren Feldern zusammensetzen, allerdings deutet das wiederum meistens auf ein Tabellendesignproblem hin. Grundregel: Falls ein PK benötigt wird, dann ein eigenes Feld dafür anlegen und nicht andere Felder dafür missbrauchen.

Dim

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...