在轨道上的ruby中使用MS-SQL十进制字段显示错误的十进制数

时间:2013-02-05 03:09:58

标签: sql-server ruby-on-rails-3 activerecord

我正在使用MS SQL 2005数据库开展一个RoR项目。 在数据库中,我有一个名为“设备”的表,其中我有一个名为“std_unit”的字段,定义为数据类型decimal(18,2)。

一个奇怪的行为是,即使我在该字段中存储一个2位小数的值,但是,由于我的ruby代码,它在小数点后显示的位数过多。 以下示例显示了存储在那里时的样子,我通过SQL Management Studio查看了它。

    e.g (how it looks when stored in the database)

        std_unit
        ========
        11.11

schema definition in Rails 

        schema.rb
        ----------
        t.decimal  "std_unit",      :precision => 18, :scale => 2

当我提取数据到Rails视图中时,我得到的是相同的数字 小数点后面有太多数字。

Then I retrieve that value via the following line of code thru active_record.

eq.std_unit

standard unit   11.1099853515625

我的配置有什么问题吗?以及如何摆脱它?

任何建议都会非常感激。

0 个答案:

没有答案