Hallo Leute.
Gleich mal vorweg. Ich bin noch nicht so gut in Sachen MySQL und Datenbanken, da ich dem Thema früher immer aus dem Weg ging.
Allerdings möchte ich mich jetzt doch einarbeiten und habe gleich ein kleines Verständnisproblem.
Ich habe ein Projekt, indem User Ihre Bücher anhand einer Liste auswählen können welche Sie besitzen.
Also es gibt ja vorgegebene Bücher (Autor, Titel, Verlag, etc.) und User, die eine unterschiedliche Anzahl an Büchern haben.
Jetzt hab ich mich schon soweit eingelesen dass es sinnvoll ist die Datenbank zu normalisieren, was ich auch schon getan habe. Also ne Tabelle mit Bücher (eine ID für jedes Buch, als Primärschlüssel), darin beschrieben der Buchtitel und Autor. Eine zweite Tabelle mit Verlag (mehrere Verlage können das gleiche Buch haben, etc).
So. Aber jetz zu meinem Problem. User x hat 2 Bücher, User y hat 10 Bücher, User z hat 30 Bücher. Wie kann ich das jetzt in ne Tabelle einfügen? Für jeden User eine eigene Tabelle zu erstellen ist nicht sinnvoll oder? Aber ich kann ja nicht eine Tabelle "user" erstellen, die dann soviele Spalten wie es Bücher gibt hat.
Also ich stell mir das so vor.
Tabelle_user ......... buch A ......... buch B ........ buch ...
-------------------
user x: .................... x .................. x
user y: .................... x ..................................... x
user z: .................... x .................. x................ x
user ...:
Versteht man meine Frage? Oder kann ich einfach eine User-Tabelle machen in der eine einzige Spalte namens "Bücher" existiert, um dann in diese Spalte die Bücher-IDs eines Users einzutragen? Aber was ist wenn ein User an die Hunderte von Büchern besitzt, ist das für einen Spalteneintrag dann noch zumutbar?
Kleine Nebenfrage: Gibt es Projekte in denen mehrere Datenbanken verwendet werden, oder ist es üblich nur mit einer Datenbank, und verschiedenen Tabellen zu arbeiten? Wenn ja, bei welchen Projekten z.B. arbeitet man mit mehreren Datenbanken?
Vielen Dank.
LG, dartox
Gleich mal vorweg. Ich bin noch nicht so gut in Sachen MySQL und Datenbanken, da ich dem Thema früher immer aus dem Weg ging.
Allerdings möchte ich mich jetzt doch einarbeiten und habe gleich ein kleines Verständnisproblem.
Ich habe ein Projekt, indem User Ihre Bücher anhand einer Liste auswählen können welche Sie besitzen.
Also es gibt ja vorgegebene Bücher (Autor, Titel, Verlag, etc.) und User, die eine unterschiedliche Anzahl an Büchern haben.
Jetzt hab ich mich schon soweit eingelesen dass es sinnvoll ist die Datenbank zu normalisieren, was ich auch schon getan habe. Also ne Tabelle mit Bücher (eine ID für jedes Buch, als Primärschlüssel), darin beschrieben der Buchtitel und Autor. Eine zweite Tabelle mit Verlag (mehrere Verlage können das gleiche Buch haben, etc).
So. Aber jetz zu meinem Problem. User x hat 2 Bücher, User y hat 10 Bücher, User z hat 30 Bücher. Wie kann ich das jetzt in ne Tabelle einfügen? Für jeden User eine eigene Tabelle zu erstellen ist nicht sinnvoll oder? Aber ich kann ja nicht eine Tabelle "user" erstellen, die dann soviele Spalten wie es Bücher gibt hat.
Also ich stell mir das so vor.
Tabelle_user ......... buch A ......... buch B ........ buch ...
-------------------
user x: .................... x .................. x
user y: .................... x ..................................... x
user z: .................... x .................. x................ x
user ...:
Versteht man meine Frage? Oder kann ich einfach eine User-Tabelle machen in der eine einzige Spalte namens "Bücher" existiert, um dann in diese Spalte die Bücher-IDs eines Users einzutragen? Aber was ist wenn ein User an die Hunderte von Büchern besitzt, ist das für einen Spalteneintrag dann noch zumutbar?
Kleine Nebenfrage: Gibt es Projekte in denen mehrere Datenbanken verwendet werden, oder ist es üblich nur mit einer Datenbank, und verschiedenen Tabellen zu arbeiten? Wenn ja, bei welchen Projekten z.B. arbeitet man mit mehreren Datenbanken?
Vielen Dank.
LG, dartox
Zuletzt bearbeitet: