sql >> Database >  >> RDS >> Mysql

Hoe voeg ik meerdere rijen in op basis van een query?

Wat u zoekt is ar-extensions

Installeer de edelsteen met

sudo gem install ar-extensions

Neem de edelsteen op in uw environment.rb (of direct in het model waarmee u invoegingen wilt doen)

require 'ar-extensions'

En voeg meerdere records in in één INSERT opvragen met

fields = [:first_name, :last_name, :email]
data = [["glenn", "gillen", "[email protected]"],
       ["john", "jones", "[email protected]"],
       ["steve", "smith", "[email protected]"]]

User.import fields, data

U kunt het ook doen met ActiveRecord-objecten.

data = [ 
         User.new(:first_name => 'glenn', :last_name => 'gillen', :email => '[email protected]'),
         User.new(:first_name => 'john', :last_name => 'jones', :email => '[email protected]'),
         User.new(:first_name => 'steve', :last_name => 'smith', :email => '[email protected]')
       ]

User.import fields, data

Er zijn 3 nieuwe rijen ingevoegd in de gebruikerstabel, met slechts de enkele zoekopdracht!

Meer hierover hier , hier en hier .



  1. Hoe de functie JulianDay() werkt in SQLite

  2. Hoe te SELECTEREN over twee tabellen?

  3. FOUT 1054 (42S22):Onbekende kolom '‍‍' in 'veldlijst'

  4. Primaire sleutel sorteren