Symfony2アプリケーションのDoctrine2で財務数値を保持するための小数フィールドを作成しています。
現在、次のようになっています。
/**
* @ORM\Column(type="decimal")
*/
protected $rate;
値を入力し、その値がデータベースに永続化されると、整数に丸められました。フィールドの精度とスケールタイプを設定する必要があると思いますが、それらが何をするのかを正確に説明する人が必要ですか?
Doctrine2のドキュメントには次のように書かれています。
精度:10進数(正確な数値)列の精度(10進数列にのみ適用されます)
scale:10進数(正確な数値)列のスケール(10進数列にのみ適用されます)
しかし、それは私にひどいことを教えてくれません。
精度は四捨五入する小数点以下の桁数だと思いますので、2と思いますが、スケールとは何ですか?スケールは有効数字ですか?
私のフィールド宣言はこれである必要がありますか?:-
/**
* @ORM\Column(type="decimal", precision=2, scale=4)
*/
protected $rate;