Mysql 在RubyonRails中向数据库插入数据

Mysql 在RubyonRails中向数据库插入数据,mysql,ruby-on-rails,Mysql,Ruby On Rails,我有两个模型,主要模型和细节模型。 在我的家庭控制器中,我想在数据库中插入1.000.000个条目,仅用于测试问题 但这是非常缓慢的,插入的速度非常缓慢。。有可能加快速度吗 也许我的配置有问题? 因为我想,每次保存主条目时,都应该创建相应的详细条目 主要模型如下所示: class Main < ActiveRecord::Base has_one :detail, :dependent => :destroy before_create :build_a_detail pr

我有两个模型,主要模型和细节模型。 在我的家庭控制器中,我想在数据库中插入1.000.000个条目,仅用于测试问题

但这是非常缓慢的,插入的速度非常缓慢。。有可能加快速度吗

也许我的配置有问题? 因为我想,每次保存主条目时,都应该创建相应的详细条目

主要模型如下所示:

class Main < ActiveRecord::Base
  has_one :detail, :dependent => :destroy
  before_create :build_a_detail

private
  def build_a_detail
       self.build_detail(:Bezeichnung => 'test', :Koordinaten => 10, :main_id => self.id)
  end
end
class Detail < ActiveRecord::Base
  belongs_to :main
end

问题是每次创建时都会在数据库中执行一个insert查询,这会减慢应用程序的速度。 您也可以使用Rails进行批量插入:

但如果我正在做,例如,单个体量插入。我仍然可以在我的主模型中使用before_create回调吗?或者我必须在sql查询中这样做吗?
def new
    for i in 0..1000000
      main = Main.new(:Category => 'Krankenhaus', :Latitude => 5, :Longitude => 6)
      main.save
    end
  end