Pro sloupce typu integer
, :limit
hodnota je maximální délka sloupce v bajtech (dokumentace ).
Při délce 4 bajtů je největší celé číslo se znaménkem, které můžete uložit, 2 147 483 647, což je mnohem méně než vaše hodnota 4 825 733 517. Můžete zvýšit limit bajtů, například na 8 bajtů, aby bylo dlouhé celé číslo (a velký typ PostgreSQL ), to vám umožní uložit podepsané hodnoty až do 9,223,372,036,854,775,807.
Můžete to udělat pomocí migrace, vytvořte ji pomocí něčeho jako rails generate migration change_integer_limit_in_your_table
a následující kód:
class ChangeIntegerLimitInYourTable < ActiveRecord::Migration
def change
change_column :your_table, :your_column, :integer, limit: 8
end
end