2

我有一个现有的 postgresql 数据库,我想在新的 rails 应用程序中使用它,所以我首先想将现有模式转储到 schema.rb 中rake db:schema:dump。但是,当我这样做时,schema.rb 对数字列有一个奇怪的精度值。

create_table "order", :id => false, :force => true do |t|
    ....
    t.decimal  "Quantity",               :precision => 131089, :scale => 0
    ....

在我的 PostgreSQL 数据库中,数字类型列没有明确的精度或比例集。

为什么精度显示出如此巨大的价值是有原因的?

我也尝试过更改和删除 schema.rb 中的精度修饰符,但每次我进行迁移时,它都会使用这些巨大的值重新生成 schema.rb 文件。我查看了ActiveRecord 表定义,但这不是很有帮助。

4

1 回答 1

0

我怀疑这被选为 PostgreSQL 中数值的最大精度。请参阅http://www.postgresql.org/docs/9.2/static/datatype-numeric.html

于 2013-03-24T02:27:20.417 回答