我们使用以下查询在具有200万行的表中将某个字段设置为null。使用ActiveRecord API有更快的方法吗?现在,从这个电话回来需要2-3分钟。
Foo.update_all(:bar => nil)
答案 0 :(得分:1)
试试这个,另一种做你想做的事。
ALTER TABLE foo DROP COLUMN bar;
然后,
ALTER TABLE foo ADD COLUMN bar INT(10) DEFAULT NULL;
答案 1 :(得分:0)
可能不是。这只会执行非常简单的SQL:
UPDATE foos SET bar = NULL
不知道如何利用ActiveRecord API更快地 。