次のようなSQLを実行する必要があります
CREATE TABLE cars_users2 AS SELECT DISTINCT * FROM cars_users;
DROP TABLE cars_users;
ALTER TABLE cars_users2 RENAME TO cars_users;
heroku dataclips を使用してテーブルを削除できないため、dataclips を使用できません。
したがって、移行時にこれを実行する必要があると思います。
この SQL を移行として記述するにはどうすればよいでしょうか?
ベストアンサー1
上位移行の場合:
execute "CREATE TABLE cars_users2 AS SELECT DISTINCT * FROM cars_users;"
drop_table :car_users
rename_table :car_users2, :car_users
ダウンの場合:
raise ActiveRecord::IrreversibleMigration
完全移行:
class TheMigration < ActiveRecord::Migration
def up
execute "CREATE TABLE cars_users2 AS SELECT DISTINCT * from cars_users;"
drop_table :car_users
rename_table :car_users2, :car_users
end
def down
raise ActiveRecord::IrreversibleMigration
end
end