我在一个 Rails 应用程序中有一个包含数十万条记录的表,它们只有一个 created_at
时间戳。我添加了编辑这些记录的能力,所以我想向表中添加一个 updated_at
时间戳。在添加列的迁移中,我希望更新所有行,使新的 updated_at
与旧的 created_at
匹配,因为这是 Rails 中新创建的行的默认值。我可以执行 find(:all)
并循环遍历记录,但由于表的大小,这将花费数小时。我真正想做的是:
UPDATE table_name SET updated_at = created_at;
在使用 ActiveRecord 而不是执行原始 SQL 的 Rails 迁移中,是否有更好的方法来做到这一点?