Ruby on rails 3.1 在一条语句中Rails多个SQL查询

Ruby on rails 3.1 在一条语句中Rails多个SQL查询,ruby-on-rails-3.1,Ruby On Rails 3.1,在Rails中,是否有一种方法可以在一条语句中运行多个SQL查询,例如: UPDATE `dvd_actor` SET actor = replace(actor, 'Ó', 'Ó'); UPDATE `dvd_actor` SET actor = replace(actor, 'Á', CHAR(193)); UPDATE `dvd_actor` SET actor = replace(actor, 'É', CHAR(201)

在Rails中,是否有一种方法可以在一条语句中运行多个SQL查询,例如:

UPDATE `dvd_actor` SET actor = replace(actor, 'Ó', 'Ó');
UPDATE `dvd_actor` SET actor = replace(actor, 'Á', CHAR(193));
UPDATE `dvd_actor` SET actor = replace(actor, 'É', CHAR(201));
UPDATE `dvd_actor` SET actor = replace(actor, 'Í', CHAR(205));
Dvd.all.each do |dvd|
  # your substitutions here
  dvd.actor= dvd.actor.gsub(/foo/,'bar')
  dvd.save
end
所有这些都在一个查询中

这是我用PHP清理数据库时做的事情,但是Rails在第一次之后给了我一个错误。我猜这不是Rails的方式,只是好奇在Rails中实现这一点的最佳方式是什么

目前我有:

self.connection.execute("UPDATE `dvd_actor` SET actor = replace(actor, 'Ó', 'Ó');
UPDATE `dvd_actor` SET actor = replace(actor, 'Á', CHAR(193));
..."
编辑:
我应该解释一下,我认为用gsub运行它们是一种资源浪费,而用SQL处理它会更快、更高效。我的意思是,既然SQL可以更好地处理它们,为什么还要将它们转换为API中的循环呢?

我会将所有替换转换为Ruby代码,然后使用它来运行它。比如:

UPDATE `dvd_actor` SET actor = replace(actor, 'Ó', 'Ó');
UPDATE `dvd_actor` SET actor = replace(actor, 'Á', CHAR(193));
UPDATE `dvd_actor` SET actor = replace(actor, 'É', CHAR(201));
UPDATE `dvd_actor` SET actor = replace(actor, 'Í', CHAR(205));
Dvd.all.each do |dvd|
  # your substitutions here
  dvd.actor= dvd.actor.gsub(/foo/,'bar')
  dvd.save
end

谢谢你的回答,但我应该解释一下,我认为用gsub运行它们是浪费资源,而用SQL处理它要快得多,效率也高得多。我的意思是,既然SQL可以更好地处理它们,为什么还要将它们转换为API中的循环呢?那么您根本不应该使用Rails。编写一个mysql脚本;)我有一个Rails API,我正在尝试将我所有的PHP API迁移到它。