web-dev-qa-db-ja.com

Doctrineフロートの小数点以下2桁から2桁ですか?

注釈:

/**
 * @ORM\Column(type="float", scale="2")
 */
protected $curr_price;

Symfony 2で使用しています。

また、このフィールドは、MySQLデータベースでは、2点精度の浮動小数点ではなくdoubleになります。

何が悪いのですか? DBを削除して再挿入してみました...

25
Tool

precisionプロパティとscaleプロパティはどちらも、decimalマッピングタイプ( link )でのみ機能します。 decimalタイプを使用することをお勧めします。

Floatではなくdoubleフィールドが作成される理由については、完全にはわかりません。おそらく、サポートされているすべてのデータベースとの互換性に関係しています。 doubleマッピングタイプについての言及はないので、両方に同じタイプを使用していると思います。

34
gilden

* .yml

curr_price:
    type: decimal
    precision: 10
    scale: 2
10
juan
/**
 * @ORM\Column(type="float", scale=2)
 */
protected $curr_price;

スケールは整数でなければならず、文字列を使用しています

8