max89: negative Kommazahlen in Mysql - datenstruktur?

hallo,

erstmal danke, dass ihr euch die Zeit nehmt mein Problem zu lösen :-)
ich möchte in einer mysql Spalte negative Kommazahlen speichern.

Aber mir kommt vor, egal welchen Datentyp ich ausprobiere, es will und will nicht hinhauen.
Mit dem negativen Vorzeichen gibts offensichtlich kein Problem, aber aus meinen -5,5 wird dann mal plötzlich -6 oder -5. mit -5.5 statt -5,5 hab ich's auch schon probiert.

Weiss jemand von euch, welchen Datentyp ich wählen muss - oder ob das überhaupt möglich ist?

danke für eure Hilfe,
lg
max

  1. Weiss jemand von euch, welchen Datentyp ich wählen muss - oder ob das überhaupt möglich ist?

    Kommt auf die MySQL-Version an, wie es möglich ist - möglich ist es aber.

    http://dev.mysql.com/doc/refman/5.1/de/precision-math-decimal-changes.html

    1. Danke für Deine Antwort - leider sehe ich mich da nicht wirlkich durch!

      Ich habe gerade nachgeschaut, meine Mysql Version ist folgende:
      MySQL-Client-Version: 5.0.51a

      thx

      1. Danke für Deine Antwort - leider sehe ich mich da nicht wirlkich durch!

        Lesen, verstehen, anwenden.

        Ich habe gerade nachgeschaut, meine Mysql Version ist folgende:
        MySQL-Client-Version: 5.0.51a

        http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html (Abschnitt: Fixed-Point (Exact-Value) Types: etwa 20 Zeilen, < 300 Worte)

        Das sollte doch nicht so schwer anzuwenden sein - da steht auch genau bei welcher Version sich der Datentyp wie verhält und wieviel da "rein" passt.

        1. danke, jetzt hab ich's. Hat mich ungefähr ne halbe Stunde gekostet, bis ich geschnallt habe, dass ich die Werte mit Punkt und nicht mit Komma eingeben muss :-)

          Danke für deine Hife

          Danke für Deine Antwort - leider sehe ich mich da nicht wirlkich durch!

          Lesen, verstehen, anwenden.

          Ich habe gerade nachgeschaut, meine Mysql Version ist folgende:
          MySQL-Client-Version: 5.0.51a

          http://dev.mysql.com/doc/refman/5.0/en/numeric-types.html (Abschnitt: Fixed-Point (Exact-Value) Types: etwa 20 Zeilen, < 300 Worte)

          Das sollte doch nicht so schwer anzuwenden sein - da steht auch genau bei welcher Version sich der Datentyp wie verhält und wieviel da "rein" passt.

          1. Moin

            ... dass ich die Werte mit Punkt und nicht mit Komma eingeben muss :-)

            Nach deinem Originalpost zu Urteilen hattest du dies schon probiert.

            OP: ... mit -5.5 statt -5,5 hab ich's auch schon probiert.

            Was ist da schiefgelaufen? Da muss es ja noch einen Fehler gegeben haben.

            Gruß Bobby

            --
            -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
            ### Henry L. Mencken ###
            -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
            ## Viktor Frankl ###
            ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)
            1. Moin Moin!

              ... dass ich die Werte mit Punkt und nicht mit Komma eingeben muss :-)

              Nach deinem Originalpost zu Urteilen hattest du dies schon probiert.

              OP: ... mit -5.5 statt -5,5 hab ich's auch schon probiert.

              Was ist da schiefgelaufen? Da muss es ja noch einen Fehler gegeben haben.

              Typische Ursache beim Benutzen eines GUI: Fehlermeldung dank jahrelangem Training durch Werbemüll und Snakeoil reflexartig weggeklickt.

              Typische Ursache bei selbstgeschriebener Software: Fehlende Fehlerprüfung.

              Wenn Du beides ausgeschlossen hast, kannst Du Dir mal Gedanken über den MySQL-Parser machen, den Du mit Deinen SQL-Statements fütterst: Das Komma ist in SQL typischerweise ein Listentrenner, so dass MySQL vermutlich zwei durch ein Komma getrennte Integer gesehen hat. Was es mit dem zweiten Integer angestellt hat, hängt vom genauen SQL-Statement ab. Man kann sicherlich SQL-Statements konstruieren, bei denen der zweite Integer keine offensichtliche Wirkung hat.

              Bei MySQL kommt erschwerend hinzu, dass es eine sehr eigenwillige Interpretation der SQL-Standards hat und sich stellenweise extrem anders als andere RDBMS und damit unangenehm überraschend verhält. Bei MySQL ist es sehr wichtig, die Dokumentation gelesen und verstanden zu haben, insbesondere die kleinen Nebensätze mit den MySQL-spezifischen Macken. MySQL Gotchas ist zwar schon etwas angestaubt, aber ich denke nicht, dass diese ganzen Macken aus MySQL 5.x verschwunden sind. Schon allein, weil irgendwann mal Software von 4 auf 5 umgestellt werden muß / wurde, und das Beseitigen dieser Macken bei diesem Prozess kaum gut angekommen wäre.

              Alexander

              --
              Today I will gladly share my knowledge and experience, for there are no sweeter words than "I told you so".
              1. Moin

                Typische Ursache beim Benutzen eines GUI: Fehlermeldung dank jahrelangem Training durch Werbemüll und Snakeoil reflexartig weggeklickt.

                Typische Ursache bei selbstgeschriebener Software: Fehlende Fehlerprüfung.

                Wenn Du beides ausgeschlossen hast, kannst Du Dir mal Gedanken über den MySQL-Parser machen, den Du mit Deinen SQL-Statements fütterst: Das Komma ist in SQL typischerweise ein Listentrenner, so dass MySQL vermutlich zwei durch ein Komma getrennte Integer gesehen hat. Was es mit dem zweiten Integer angestellt hat, hängt vom genauen SQL-Statement ab. Man kann sicherlich SQL-Statements konstruieren, bei denen der zweite Integer keine offensichtliche Wirkung hat.

                Bei MySQL kommt erschwerend hinzu, dass es eine sehr eigenwillige Interpretation der SQL-Standards hat und sich stellenweise extrem anders als andere RDBMS und damit unangenehm überraschend verhält. Bei MySQL ist es sehr wichtig, die Dokumentation gelesen und verstanden zu haben, insbesondere die kleinen Nebensätze mit den MySQL-spezifischen Macken. MySQL Gotchas ist zwar schon etwas angestaubt, aber ich denke nicht, dass diese ganzen Macken aus MySQL 5.x verschwunden sind. Schon allein, weil irgendwann mal Software von 4 auf 5 umgestellt werden muß / wurde, und das Beseitigen dieser Macken bei diesem Prozess kaum gut angekommen wäre.

                Ähm, ich muß deinen Post jetzt nicht verstehen oder? ;) Ich habe den OP lediglich darauf hingewiesen, das seine Lösung die er nannte bereits im Originalpost enthalten war. deswegen die Farge was anderes schiefgelaufen ist. Ich weiß sehr wohl um die Unterschiede zwischen Komma und Punkt im SQL... ;) Also ich weiß nicht was deine Antwort mit meinem Post zu tun hat.

                Gruß Bobby

                --
                -> Für jedes Problem gibt es eine Lösung, die einfach, sauber und falsch ist! <-
                ### Henry L. Mencken ###
                -> Nicht das Problem macht die Schwierigkeiten, sondern unsere Sichtweise! <-
                ## Viktor Frankl ###
                ie:{ br:> fl:{ va:} ls:< fo:) rl:( n4:( de:> ss:) ch:? js:( mo:} sh:) zu:)