2017-01-06 4 views
0

1 * 20/100 = 0.2Wie genau Dezimalwert in Datenbank speichern können

ich den gleichen Wert in der Datenbank gespeichert werden sollen, wie ich tun kann, dass Ich gebe Typ Spalte als Decimal und die Länge nimmt automatisch als (10,0)

Mein Problem ist das Speichern von 0 anstelle von

+4

Doppel- oder Schwimmer sind deine Freunde in mysql .... – donald123

+0

Sie Ihre Tabellenfeld von 'int' – Akshay

+0

zu' float' ändern können Sie haben Sie Tabelle abgelegt Typ ändern zu schweben oder varchar –

Antwort

1

Kein Datentyp speichert 1/3 genau.

Ihr Beispiel von 20/100 impliziert die Notwendigkeit für DECIMAL(..., 2), wo die ... eine geeignete maxinum Anzahl der Ziffern einschließlich der 2.

Ohne weitere Erkenntnisse darüber, woher die Zahlen kommen oder wie sie verwendet werden, können wir nicht weiter darauf eingehen.

1

Ändern Sie die Grenze dieses Feldes als (10,2) und versuchen Sie es erneut. Es könnte dir helfen.

1

Verwenden Sie den Typ "double" (10,2) in Ihrer Datenbank.

doppelt so hoch ist Art und Länge ist 10,2 es wie 0,20

speichern, wenn Ihr wollen, dass die Verwendung nur einzelne Dezimalziffer speichern 10,1

Dank.

+0

'FLOAT' und' DOUBLE' sind ungenau und beinhalten eine zusätzliche Rundung. Benutze '(m, n)' nicht mit ihnen. –

Verwandte Themen