0

Mysqlにフィールドを挿入できません。入力はHTMLフォームから文字列として渡されます。問題は型の不一致によるものだと思います。DBタイプはdoubleです

そして、私はそれをダブルまたはフロートに変換することができません。floatval()またはDoubleval()を使用します。

通常、入力は8のようなものです。8.0に変換したいです。

4

2 に答える 2

3

8小数または浮動小数に完全に安全に挿入できます。そうである必要はまったくありません8.0

値を挿入できない場合は、データベースのデータ型ではなく、別の問題です。

詳細を投稿していただければ、さらに詳しく調べます:)

int編集: 、decimalおよびfloatタイプへの入力データを次に示します。

mysql> create table numberTest(inty int(2), decy decimal(3,2), floaty float(3,2));
Query OK, 0 rows affected (0.01 sec)

mysql> select * from numberTest;
Empty set (0.00 sec)

mysql> insert into numberTest values(7,7,7);
Query OK, 1 row affected (0.00 sec)

mysql> insert into numberTest values(7.2,7.2,7.2);
Query OK, 1 row affected (0.00 sec)

mysql> select * from numberTest;
+------+------+--------+
| inty | decy | floaty |
+------+------+--------+
|    7 | 7.00 |   7.00 |
|    7 | 7.20 |   7.20 |
+------+------+--------+
2 rows in set (0.01 sec)

値を挿入できない場合は、PHP で挿入コマンドを表示してください。データ型ではありません。あなたはこの質問で間違った木を吠えています。

于 2012-08-22T11:37:19.227 に答える
1
        $number = 8;
        echo number_format($number, 1, '.', ' '); //8.0
        echo number_format($number, 2, '.', ' '); //8.00
于 2012-08-22T11:45:43.257 に答える