Mehrer Werte in ein Feld der Tabelle?

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Mehrer Werte in ein Feld der Tabelle?

    Hallo,

    habe ein automatisches BenachrichtigungsSystem,
    wo Email und Kategorie eingetragen werden,
    wenn sich der Benutzer für eine Kategorie angemeldet hat.

    Jetzt ist es aber so, das für jede Kategorie in der Datenbanktabelle eine neue Zeile mit email und Kategorie-ID angelegt wird.

    Kann mir jemand verraten, ob und wie es möglich ist,
    das alle Kategorie-IDs in nur ein Feld (getrennt durch ein Komma o.ä.)
    eingetragen werden.

    Nochmals zur Veranschaulichung:

    So ist es momentan

    Emailadresse.......# Kategorie-ID
    #############################
    email@freemail.de # 2
    email@freemail.de # 5
    email@freemail.de # 7
    usw.

    Und so sollte es sein

    Emailadresse.......# Kategorie-ID
    #############################
    email@freemail.de # 2, 5 ,7


    Vermute das es mit nem Array zutun haben muss,
    bin aber weniger der Crack, ein Tipp oder Beispiel
    wäre supi!

    Gruss
    bassek

  • #2
    Ist es wirklich so schwer einen String zusammenzubauen?

    Einfach die verschiedenen Kategorien in einen Array laden und diesn mit implode() zu einem String verbasteln.

    Dann das ganze in die DB schreiben.
    it's not a bug,
    it's a feature!

    Kommentar


    • #3
      Hi,
      danke erstmal für Deinen Tipp - und ja, es ist so schwierig für jemanden
      der weniger den Plan hat.
      Freut mich aber, das Du es anscheinend kannst.
      Gruss
      Bassek

      Kommentar


      • #4
        Re: Mehrer Werte in ein Feld der Tabelle?

        Original geschrieben von bastian
        Jetzt ist es aber so, das für jede Kategorie in der Datenbanktabelle eine neue Zeile mit email und Kategorie-ID angelegt wird.
        und das ist auch gut so [tm].

        so hast du deine datenstruktur also halbwegs ordentlich normalisiert.

        Kann mir jemand verraten, ob und wie es möglich ist,
        das alle Kategorie-IDs in nur ein Feld (getrennt durch ein Komma o.ä.)
        eingetragen werden.
        das ist nicht sinnvoll.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          Hallo wahsaga,

          wenn Du mir jetzt noch sagst, warum es nicht sinnvoll ist,
          mehrere Werte in ein Feld zu schreiben, bin ich halbwegs glücklich.

          Dachte ich würde somit Performance sparen, denn was, wenn sich 500 Benutzer für 20 Kategorien anmelden, dann hab ich ganz fix 10.000 Zeilen in der Tabelle...

          Bitte um Antwort und danke jetzt schonmal für die Erlauchtung,
          Gruss aus Essen,
          bassek

          Kommentar


          • #6
            wenn Du mir jetzt noch sagst, warum es nicht sinnvoll ist,
            mehrere Werte in ein Feld zu schreiben, bin ich halbwegs glücklich.
            OffTopic:
            was spricht dagegen, alle informationen in eine zelle zu schreiben? würde bestimmt enorm speicherplatz und performance bringen ... nicht auf dich bezogen, aber ich krieg jedesmal nackenfell, wenn ich jemanden sehe, der mehrere werte in ein feld packen will ...


            der sinn, alles einzeln abzulegen, liegt afaik dadrin, daß du alles mit allem verbinden kannst und somit mit einmal abgelegten daten alle darin enthaltenen strukturen darstellen kannst, ... nur durch ein query ... naja, laß es dir von nem dbms-experten erklären ... wenn du alle in einen zelle packst, kannst du viel schwieriger: löschen, selecten, updaten whatever ....
            Die Zeit hat ihre Kinder längst gefressen

            Kommentar

            Lädt...
            X