sql >> Databáze >  >> RDS >> PostgreSQL

Celé číslo je mimo rozsah v databázi PostgreSQL

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


  1. MySQL vypočítat procento

  2. Regulární výraz (RegEx) pro IPv6 Oddělený od IPv4

  3. Zvláštní zpracování časových pásem v databázi Postgres

  4. Laravel a InnoDB