学说2 - 浮点数上的2位小数?

时间:2011-09-03 21:38:14

标签: mysql doctrine-orm symfony

注释:

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

我在Symfony 2中使用它。

此字段在MySQL数据库中变为double,而不是以2点精度浮点数。

我做错了什么?我尝试删除数据库,重新插入等...

3 个答案:

答案 0 :(得分:31)

precisionscale属性都只适用于decimal映射类型(link)。我建议你使用decimal类型。

至于为什么它会创建一个双字段而不是浮点数,我不完全确定。它可能与兼容所有支持的数据库有关。我没有看到double映射类型,所以我假设它们对两者使用相同的类型。

答案 1 :(得分:10)

<。>在* .yml

curr_price:
    type: decimal
    precision: 10
    scale: 2

答案 2 :(得分:8)

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

scale应该是一个整数,并且您使用的是字符串