Announcement

Collapse
No announcement yet.

Frage zum Design der Datenbank

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

  • Frage zum Design der Datenbank

    Hallo

    Ich bastele gerade ein einer Art Inventar-Liste.

    Dabei habe ich eine Tabelle "Material" in der Regal, Anzahl, Raum stehen.
    Jetzt habe ich eine Tabelle "Versuch" in der neben anderen Sachen auch Materialien angegeben sein sollen. Wenn ich ein Feld "Benötigtes Material" einfüge, kann ich aber doch nur ein einzelnes angeben. Oder kann ich in SQL auch ein php-Feld speichern.

    Wie schaffe ich es also, zu einem Versuch mehrere Materialien zuzuordnen? Ich stehe da gerade auf dem Schlauch.

    Als Bild habe ich ein Beispiel angehängt

    Ich kann zwar einfach Felder material1, material2, .... material10 anlegen und dann hoffen dass ich nicht mehr als 10 Bestandteile brauche, aber das geht doch sicher eleganter, oder?
    Zuletzt editiert von borg-cube; 26.11.2019, 00:05.

  • #2
    In dem du eine zweite Tabelle "BenötigtesMaterial" erstellst. Diese enthält zu dem Datensatz aus der Tabelle jeweils die ID des Datensatzes und x Materialeinträge dazu.
    https://de.wikipedia.org/wiki/Normal...ng_(Datenbank)
    siehe 2. Normalform
    Zuletzt editiert von Christian Marquardt; 26.11.2019, 06:04.
    Christian

    Comment


    • #3
      Noch ein kleiner Hinweis zur Ergänzung:
      Das verlinkte Bild zeigt eine Darstellung, die Du mit Standard SQL nicht erreichen kannst.
      Datenerfassung mittels Tabellen und -Abfrage bzw. Ausgabe von "Ergebnissen" erfolgt zunächst immer in Listenform, "tabellarisch".

      Um die Darstellung im Bild zu erhalten, benötigst Du darauf aufsetzend spezielle Reporttools, Code (z.B. PHP) oder SQL Sonderfunktionen (Crosstable Function, Pivot - o.ä), die nicht in jeder Datenbank zur Verfügung stehen. Damit sind Transformationen möglich, die zu der Darstellung in Deinem Bild führen.
      Darstellung bzw. (Re)Präsentation von Daten sind hier bewusst unterschieden von der Datenspeicherung und Verarbeitung.

      Wenn Du weniger basteln und mehr erreichen willst, solltest Du Dir diese Aspekte einmal genauer anschauen, Datenmodellierung, Normalisierung (Normalformen s.o.) und Mengen orientierte Datenabfrage mit SQL. Es ist hilfreich, sich dabei von einer Herangehens- und Denkweise zu verabschieden, wie sie in Tabellenkalkulationen praktiziert wird.
      Zuletzt editiert von defo; 26.11.2019, 08:38.
      Gruß, defo

      Comment


      • #4
        Originally posted by Christian Marquardt View Post
        In dem du eine zweite Tabelle "BenötigtesMaterial" erstellst. Diese enthält zu dem Datensatz aus der Tabelle jeweils die ID des Datensatzes und x Materialeinträge dazu.
        https://de.wikipedia.org/wiki/Normal...ng_(Datenbank)
        siehe 2. Normalform
        Danke. genau das habe ich gesucht.

        Mir ist klar, dass ich mit der SQL-Datenbank alleine nichts anfangen kann. Es hängt natürllich eine "grafische Oberfläche" mit php und co dran

        Comment

        Working...
        X