0
私は以前に自分のテーブルのidカラムの1つをbigintに変換し、それにbigint値を設定しました。私は今、ActiveRecord without runnning into RangeErrorsで値を更新することができないので、後悔しています。Railsで主キーを再作成
id列を標準の整数型に戻して、既存の値をクリアして、自動インクリメント整数値を設定したいとします。
私は心配する必要のある外部キー/リレーションシップはありません。
Railsの移行(Rails 4/Postgres)でこれを行う簡単な方法はありますか?
移行前:
class ConvertWidgetPkToBigint < ActiveRecord::Migration
def change
change_column :widgets, :id, :bigint
end
end
現在schema.rb:
create_table "widgets", id: :bigserial, force: :cascade do |t|
...
end
私は単純な方法はないと思います(これは一般的なことではありません)。列を削除してからもう一度追加できますか? –