Frage von sebba1898, 35

Bei Freundesystem Freunde in Mysql Datenbank Speichern?

Ich bin gerade dabei ein Freundesystem zu programmieren und um Bungeecord und Bukkit zu verbinden habe ich gedacht ich speicher einfach die Freunde in einer MysQL datenbank. Jetzt aber die frage Wie kann ich die freunde speichern am besten in einer Spalte das ich die uuid vom Spieler Speicher und in der 2. Spalte die der Freunde. Oder gibt es eine andere Lösung (Ich will Bungeecord und Bukkit wegen der Freundesliste bzw Gui verbinden).

Antwort
von LeonardM, 22

1. Tabelle mit allen userdaten zb id, name,email...

2. Tabelle mit allen freundschaften und freundschaftsdaten wenn notwendig also id,srcuid, dstuid

Antwort
von SeriousLaw, 15

Bei dem erstellen eines Datenbankprojektes gibt es einiges beachten. Zum ersten solltest Du Dir genau überlegen welche Entitäten du speichern willst. Es gibt Normalformen die Du Dir mal ansehen solltest. Es gibt 3 Normalformen die für dich ausschlaggebend sind.

1. Normalform

Jedes Attribut eines Datensatzes muss Atomar sein.

Beispiel: Schreibe nicht PLZ, Ort Und Straße in ein Attribut.

2. Normalform

Entspricht nur wenn es die erste Normalform einhält.

Es dürfen sich keine Daten wiederholen.

Stelle dir vor du hast eine Tabelle von Musiktiteln mit samt Band usw.

Lied:                                    Band:

Thunderstruck                    AC / DC

Hells Bells                          AC / DC

T.N.T                                  AC / DC

Highway to Hell                 AC / DC

____________________________________

AC / DC wiederholt sich zu oft und ist so mit unnötig.

Ideal wäre es eine eigene Band Tabelle anzulegen. Weil dort jede Band nur einmal drin steht. Somit hast du keine Wiederholungen.

https://de.wikipedia.org/wiki/Normalisierung\_(Datenbank)

Soweit ich mich mit Minecraft auskenne gibt es den Minecraft Username und die UUID. Die UUID kann übrigens über den Namen über bestimmte Web APIs über ein GET Abgefragt werden. Auch umgekehrt.

Soweit ich das auch verstanden habe, willst du das ein MC-User mehrere User als Freunde haben kann.

Vielleicht so: Siehe Bild.

Du musst übrigens in der Friend Tabelle USER_ID und FRIEND_ID zu einem zusammengesetzen Primärschlüssel machen. Dadurch ist durch das DBMS sichergestellt, dass ein User einen Freund nur einmal haben kann und nich mehrmals.

LG SeriousLaw


Kommentar von SeriousLaw ,

Übrigens:

Auch dürfen USER_ID und FRIEND_ID in der FriendTabelle nicht die selben
sein, sonst hast du dich selbst als Freund. Aber das muss in die
Programmlogik (Validierung).

Keine passende Antwort gefunden?

Fragen Sie die Community