Jeśli potrzebujesz dokładnej wartości, przechowuj ją jako dokładny typ danych, np. DECIMAL(17,7)
, co zapewniłoby taki sam zakres jak FLOAT(10,7)
. Jedyną wadą jest to, że DECIMAL
zajmie więcej miejsca na dysku niż odpowiednik FLOAT
, jednak jest to trywialne w porównaniu do korygowania błędów zmiennoprzecinkowych, w których liczy się precyzja.
http://dev.mysql.com/doc /refman/5.0/en/typy-stałych-punktów.html
Aby uzyskać więcej informacji na temat problemów z liczbami zmiennoprzecinkowymi, warto zapoznać się z poniższymi informacjami
http://dev.mysql.com/doc /refman/5.0/en/problems-with-float.html