phpmyadmin, int dezimal zahlen?
Hallo zusammen
ich nutzte mysql und phpmyadmin
in einer spalte mit deklarierung int möchte ich nun 18.8 eingeben
es rundet immer auf 19 auf.
wie kann ich die decimal abspeichern?
danke
3 Antworten
Entweder du verwendest für die Tabellenspalte in der Datenbank einen Werttyp, der Gleitkommazahlen unterstützt (z.B. FLOAT, DOUBLE, DECIMAL) oder du überlegst dir einen Faktor, mit dem du alle Zahlen beim Einfügen multiplizierst und beim Auslesen wieder dividierst (Bsp.: 18.8 * 10 = 188). Letzterer Weg wäre natürlich umständlicher und ist mit Präzisionseinbußen verbunden.
Gar nicht. Das liegt in der Natur von Ganzzahlen, dass sie keine Nachkommastellen haben.
DECIMAL ist ein Fixed-Point-Typ. Er wird durch eine Angabe zweier Faktoren definiert. Wenn du in der Definition der Tabellenspalte bspw.
DECIMAL(4,2)
angibst, umfasst der Wertebereich nur Werte mit insgesamt vier Ziffern (precision), wobei zwei Ziffern hinter dem Komma stehen (scale). Wenn du nur die Präzision angibst:
DECIMAL(4)
werden keine Nachkommastellen berücksichtigt.
geht nicht - integer (int) kann nur Ganzzahlen verarbeiten - Gleitkommazahlen musst du mit float deklarieren - aber keine Ahnung, wie man das in MySql macht
und decimal funktioniert auch nicht :-(, weshlab das?