Определение первичного ключа id BIGINT PRIMARY KEY при создании модели (таблицы БД) ActiveRecord Ruby on Rails
Иногда возникает необходимость использования большего диапазона для значений первичного ключа (идентификатора записи) в модели, когда количество записей будет явно превышать допустимый диапазон, предоставляемый INT в MySQL. Прямого механизма указания типа первичного ключа в ActiveRecord::Migration
не существует, но есть метод execute
:
class CreateProducts < ActiveRecord::Migration def change create_table :products do |t| ... end add_index ... ... # или BIGINT UNSIGNED AUTO_INCREMENT # для еще большего диапазона execute "ALTER TABLE products MODIFY id BIGINT AUTO_INCREMENT" end end