Как определить большие целые числа?

Возможный дубликат:
Целочисленность вне диапазона в DB Postgres

Когда мой код пытается вставить большие числа, такие как 100001857905525, в базу данных на heroku, я получаю ошибку:

ActiveRecord::StatementInvalid (PGError: ERROR:  integer out of range ) 

Столбец определен как целое число. Я использую базу данных sqlite3. Мой код развернут в герою.

Он отлично работает, когда я запускаю на localhost. Но я получаю ошибку выше, только когда запускаю код на героку. Возможно, я могу решить проблему, указав столбец как длинное целое или двойное. Как это сделать в Ruby/Rails?

Ответы

Ответ 1

в вашей миграции вы можете попробовать следующее:

t.integer :uid, :limit => 8

который будет генерировать 64-разрядный целочисленный столбец.

(Только integer без указания limit разрешит, согласно Документы PostgreSQL, до 10 цифр.)