mark: Feldtyp für Preis

Hallo,

welchen Feldtype sollte man für eine Preisangabe eines Shops nehmen.
(MYSQL).

Ich habe von Rundungsfehler gehört, wenn man dezimal nicht ?

Ist das wahr?

Ist es besser in Cent zu rechnen?

Grüsse
mark

  1. Hi,

    ich kenne nur 'MSSQL'. Da hat es sich als sehr vorteilhaft erwiesen 'numeric (18, 2)' zu verwenden, also einen numerischen Datentyp mit 16 Stellen vor und 2 Stellen nach dem Dezimaltrenner.

    Der Datentyp 'money' taugt nichts wegen vier Nachkommastellen.

    Michael Schroepl raet uebrigens zum Datentyp int, was sicherlich auch seinen Charme hat, aber die Realitaet m.E. suboptimal abbildet.

    Gruss,
    Lude

    1. Hi Lude,

      Michael Schroepl raet uebrigens zum Datentyp int,

      ... und ggf. UNSIGNED, im vorliegenden Fall ...

      was sicherlich auch seinen Charme hat,

      ... und Rundungsfehler ausschließt ...

      aber die Realitaet m.E. suboptimal abbildet.

      Inwiefern? Solange ich mich innerhalb einer Währung bewege, weiß ich, mit welchem Faktor ich skalieren muß; bei mehreren Währungen brauche ich eine Abbildungstabelle. Und sonst?

      Viele Grüße
            Michael

      --
      T'Pol: I apologize if I acted inappropriately.
      V'Lar: Not at all. In fact, your bluntness made me reconsider some of my positions. Much as it has now.
      (sh:| fo:} ch:] rl:( br:^ n4:( ie:% mo:) va:| de:/ zu:| fl:( ss:) ls:~ js:|)
       => http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A|+fo%3A}+ch%3A]+rl%3A(+br%3A^+n4%3A(+ie%3A%25+mo%3A)+va%3A|+de%3A%2F+zu%3A|+fl%3A(+ss%3A)+ls%3A~+js%3A|
      Auch diese Signatur wird an korrekt konfigurierte Browser gzip-komprimiert übertragen.
      1. Hi Michael,

        aber die Realitaet m.E. suboptimal abbildet.

        Inwiefern? Solange ich mich innerhalb einer Währung bewege, weiß ich, mit welchem Faktor ich skalieren muß; bei mehreren Währungen brauche ich eine Abbildungstabelle. Und sonst?

        ein Datentyp mit zwei "festen" Nachkommastellen wie 'numeric (18, 2)' in TSQL bildet die Realitaet (steinhaeutig ideologisch betrachtet m.E.) besser ab als ein 'int'. Ich weise wiederum auf die Gewohnheit einiger Waehrungen hin im Nachstellenbereich zu "skalieren", also Nachkommastellen zu streichen. Es ist offensichtlich weniger komplex ohne "Skalierungsfaktor" die Daten zu halten.

        Gruss,
        Lude