sql >> Database >  >> RDS >> Mysql

INSERT meerdere records met ruby ​​on rails actieve record

De create methode neemt ook een array als parameter.

VoteRecord.create(
  [
    { :prospect_id => prospect.id, :state => "OH", :election_type => "GE", :election => "2011-11-08", :party => row[82], :participate => participated(row[82]) },
    { :prospect_id => prospect.id, :state => "OH", :election_type => "PR", :election => "2011-09-13", :party => row[81], :participate => participated(row[81]) }
    ...
  ]
)

Dit voert echter nog steeds één SQL-query per item uit in plaats van één SQL-query. Het is efficiënter, omdat het maar een enkel activerecord-object onder de motorkap hoeft te maken.

Van de mysql-pagina (maar ik denk dat het hetzelfde zou moeten zijn voor andere dbs)



  1. Mysql-indexconfiguratie

  2. In tsql is een Insert met een Select-statement veilig in termen van gelijktijdigheid?

  3. Join Elimination:wanneer SQL Server onnodige tabellen verwijdert

  4. Hoe een MySQL-opgeslagen procedure aanroepen vanuit PHP-code?