Zum Inhalt springen
View in the app

A better way to browse. Learn more.

Fachinformatiker.de

A full-screen app on your home screen with push notifications, badges and more.

To install this app on iOS and iPadOS
  1. Tap the Share icon in Safari
  2. Scroll the menu and tap Add to Home Screen.
  3. Tap Add in the top-right corner.
To install this app on Android
  1. Tap the 3-dot menu (⋮) in the top-right corner of the browser.
  2. Tap Add to Home screen or Install app.
  3. Confirm by tapping Install.

Empfohlene Antworten

Veröffentlicht

Hallo.

Ich möchte ein Array mit 3 Dimensionen in einer Datenbank (MySQL) speichern und dann auch abfragen. Irgendwie will mir das nicht so recht gelingen...

Ich habe in der Datenbank folgende Felder:

id, land, service, monat, jahr, wert

Was ich rausbekommen möchte, ist folgendes:

1. eine Tabelle die in etwa so aussehen könnte (x damit die Tabellenstruktur sichtbar ist):

SERVICE 1

Monatxx L1 L2 L3 L4

Januarx 22 23 45 56

Februar 43 54 66 67

L=Land

2. eine Tabelle die in etwa so aussehen könnte:

LAND 1

Monatx S1 S2 S3 S4

Januarx 22 23 45 56

Februar 43 54 66 67

S=Service

Da aber MySQL alles Zeilenweise ausgeben will, bekomme ich entweder im Fall 2 eine Tabelle mit allen Daten, also bei 4 Services 4x Januar, 4x Februar usw. Oder ich gruppiere es nach Monaten, dann bekomm ich aber nur einen Service, nicht alle 4. Oder ich gruppiere es nach Service, dann bekomm ich aber jeweils nur den ersten Monat.

Wo das Problem LOGISCH ist, ist mir klar beim gruppieren, nur weiss ich auch nicht, wie ich das anders lösen soll. Die Tabelle zerpflücken und in mehreren Tabellen abbilden kam mir auch schon in den Sinn.. ich weiss nur nicht WIE. Denn der angegebene Wert macht immer nur bezogen auf datum UND service UND land sinn.

Bestimmt steh ich nur grad aufm dem Schlauch. Weiss einer weiter? :(

Denn der angegebene Wert macht immer nur bezogen auf datum UND service UND land sinn.

Klingt doch ziemlich stark nach einem zusammengesestzten Primärschlüssel...

Schreb dir doch mal alle Daten hintereinander auf, die du speichern willst. Anschließend kommt der wichtige Punkt: Normalisierung

Normalisierung würde maximal dazu führen, dass ich Attribute auslager und noch mehr Tabellen am Ende habe... die Attribute müssen schon alle da drin bleiben, da sonst der Wert nicht mehr eindeutig ist (auch wenn er durch die ID eindeutig ist, hilft mir das ja nichts wenn ich es nicht auf eine bestimmte Konstellation von Attributen zurückführen kann).

Mag sein, dass ich das falsch sehe. Ich bin FISI im 2. AJ und hatte mit Anwendungsentwicklung bisher nicht so viel zu tun.. und in Situationen wie dieser weiss ich auch warum! :(

Wenn Du PHP einsetzt kannst Du jede beliebige Variablen serialisieren, so dass Du einen String bekommst, den Du in einem Stringfeld der Datenbank abspeichern kannst. Die meisten Programmiersprachen unterstützen auch Serialisation von Objekten (unter C++ würde ich die Boost dafür verwenden).

Sofern das Datenbankfeld groß genug ist kannst Du dann den String wieder in die passende Datenstruktur umwandeln.

Rein vom Designkonzept wäre das ganze über entsprechende Schlüsselbeziehungen und Tabellen zu realisieren.

Erstelle ein Konto oder melde dich an, um einen Kommentar zu schreiben.

Configure browser push notifications

Chrome (Android)
  1. Tap the lock icon next to the address bar.
  2. Tap Permissions → Notifications.
  3. Adjust your preference.
Chrome (Desktop)
  1. Click the padlock icon in the address bar.
  2. Select Site settings.
  3. Find Notifications and adjust your preference.