如何解决Rails 3数据库移植
必须快速将某些东西拍在一起,以将一个表(约3万条记录)从一个数据库移动到另一个具有不同名称的数据库。 我使用RoR的黑客解决方案是这样的:for old_line in SaleItemsOld.where(:sale_id => old_sale.id)
line = LineItems.new
line.sale_id = new_sale.id
...
line.save
end
我以为应该通过将所有这些新行作为SQL查询构造在单个字符串中,然后一次性执行,从而加快这一步。
为此有更好的Rails解决方案吗?
解决方法
通常,您可以通过迁移和一些精心构造的SQL来完成此类操作。通常,此想法是针对以下方面:
INSERT INTO line_items (sale_id) SELECT id FROM sale_items_old
您可以根据需要将其他值添加到插入列表和选择规范中。
在迁移中,可以通过将其放入up
方法中来运行任意SQL:
def self.up
execute(\"...\")
end
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。