class EnsureArticleForArticlePrice < ActiveRecord::Migration class ArticlePrice < ActiveRecord::Base; end def change reversible do |dir| dir.up do execute <<-SQL UPDATE article_prices SET article_id = ( SELECT article_id FROM order_articles WHERE article_price_id = article_prices.id ) WHERE article_id IS NULL SQL ArticlePrice.where(article_id: nil).destroy_all end end change_column_null :article_prices, :article_id, false end end