Ubuntu9.04でMySql5.0を使用しています。フルバージョンは次のとおりです。5.0.75-0ubuntu10
テストデータベースを作成しました。そしてその中のテストテーブル。挿入ステートメントから次の出力が表示されます。
mysql> CREATE TABLE test (floaty FLOAT(8,2)) engine=InnoDb;
Query OK, 0 rows affected (0.02 sec)
mysql> insert into test value(858147.11);
Query OK, 1 row affected (0.01 sec)
mysql> SELECT * FROM test;
+-----------+
| floaty |
+-----------+
| 858147.12 |
+-----------+
1 row in set (0.00 sec)
mySqlで設定されたスケール/精度に問題があるようです...または私は何かを逃しましたか?
アップデート:
挿入していた数値の1つに境界が見つかりました。コードは、次のとおりです。
mysql> CREATE TABLE test (floaty FLOAT(8,2)) engine=InnoDb;
Query OK, 0 rows affected (0.03 sec)
mysql> insert into test value(131071.01);
Query OK, 1 row affected (0.01 sec)
mysql> insert into test value(131072.01);
Query OK, 1 row affected (0.00 sec)
mysql> SELECT * FROM test;
+-----------+
| floaty |
+-----------+
| 131071.01 |
| 131072.02 |
+-----------+
2 rows in set (0.00 sec)
mysql>