Method: Statsample::Database.insert

Defined in:
lib/statsample/converters.rb

.insert(ds, dbh, table) ⇒ Object

Insert each case of the Dataset on the selected table

USE:

ds={'id'=>[1,2,3].to_vector, 'name'=>["a","b","c"].to_vector}.to_dataset
dbh = DBI.connect("DBI:Mysql:database:localhost", "user", "password")
Statsample::Database.insert(ds,dbh,"test")


39
40
41
42
43
44
45
# File 'lib/statsample/converters.rb', line 39

def insert(ds, dbh, table)
  require 'dbi'
  query="INSERT INTO #{table} ("+ds.fields.join(",")+") VALUES ("+((["?"]*ds.fields.size).join(","))+")"
  sth=dbh.prepare(query)
  ds.each_array{|c| sth.execute(*c) }
  return true
end