Augenfarbe: ENUM oder INT (+PHP-Array)?

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

  • Augenfarbe: ENUM oder INT (+PHP-Array)?

    Hallo,

    ich habe aktuell die Augenfarben bei einer Community in Klartext in ENUM gespeichert.

    Das verbraucht natürlich "viel" mehr Speicher als INT...

    Ist es vielleicht sinnvoller, TINYINT(1) zu nehmen und dort z.B. den Wert 2 für blau zu nehmen und intern wieder umzuwandeln?

    Also so in der Art:

    $augen = array("2"=>"blau","3"=>"braun", ...);

    Jetzt extra für die Augenfarben noch eine Tabelle anzulegen, fände ich etwas übertrieben...

  • #2
    Re: Augenfarbe: ENUM oder INT (+PHP-Array)?

    Original geschrieben von Truncate
    ich habe aktuell die Augenfarben bei einer Community in Klartext in ENUM gespeichert.

    Das verbraucht natürlich "viel" mehr Speicher als INT...
    Lies die Manual und überdenke deine falsche Annahme...
    http://dev.mysql.com/doc/refman/5.0/en/enum.html
    http://dev.mysql.com/doc/refman/5.0/...uirements.html

    Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

    bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
    Wie man Fragen richtig stellt

    Kommentar


    • #3
      Hi,

      ghostgambler sagte ja schon dass du von falschen annahmen
      ausgehst. Es wäre jedoch auch ohne weiteres möglich einen
      kleinen integer zu verwenden und dann mit bitoperationen zu
      arbeiten. Musst halt für jede farbe ne bitmaske definieren.
      Die berechnung geht schnell und bei so wenigen möglichkeiten
      ist das ohne weiteres handlebar.

      greets
      (((call/cc call/cc) (lambda (x) x)) "Scheme just rocks! and Ruby is magic!")

      Kommentar


      • #4
        Original geschrieben von closure
        Hi,

        ghostgambler sagte ja schon dass du von falschen annahmen
        ausgehst. Es wäre jedoch auch ohne weiteres möglich einen
        kleinen integer zu verwenden und dann mit bitoperationen zu
        arbeiten. Musst halt für jede farbe ne bitmaske definieren.
        Die berechnung geht schnell und bei so wenigen möglichkeiten
        ist das ohne weiteres handlebar.

        greets
        Hi closure könntest du davon mal ein Beispiel zeigen, würde mich interessieren wie das geht

        Forumregeln!

        Gute PHP-(tutorial-)Seiten

        Kommentar


        • #5
          Original geschrieben von davidovich
          Hi closure könntest du davon mal ein Beispiel zeigen, würde mich interessieren wie das geht
          Abgesehen davon, dass die Ablage von ENUM-Werten in MySQL schon auf Bit-Ebene realisiert sein dürfte - ich also wenig bis gar keinen Sinn darin sehen könnte, es für so einen Zweck selber nachzuprogrammieren - http://de.wikipedia.org/wiki/Bitmaske
          I don't believe in rebirth. Actually, I never did in my whole lives.

          Kommentar


          • #6
            Original geschrieben von wahsaga
            Abgesehen davon, dass die Ablage von ENUM-Werten in MySQL schon auf Bit-Ebene realisiert sein dürfte - ich also wenig bis gar keinen Sinn darin sehen könnte, es für so einen Zweck selber nachzuprogrammieren - http://de.wikipedia.org/wiki/Bitmaske
            so würde ich das jetzt auch sehen. Vor allem sind dann auch ggf. "falsche" Werte möglich, die MySQL bei ENUM schon abfangen würde

            Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

            bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
            Wie man Fragen richtig stellt

            Kommentar

            Lädt...
            X