PostgreSQL
 sql >> Base de données >  >> RDS >> PostgreSQL

en utilisant COPY FROM dans une application Rails sur Heroku avec le backend Postgresql

Grâce au lien de @PhilipHallstrom, j'ai utilisé COPY FROM STDIN comme ceci :

rc = User.connection.raw_connection
rc.exec("COPY users (name, taxon_id, updated_at, created_at) FROM STDIN")
begin
  until rc.put_copy_data( data )
    $stderr.puts "  waiting for connection to be writable..."
    sleep 0.1
  end
rescue Errno => err
  @errmsg = @errmsg + "%s while reading copy data: %s" % [ err.class.name, err.message ]
  error = true
else
  rc.put_copy_end
  while res = rc.get_result
    if (res.result_status != 1)
      error = true
      @errmsg = @errmsg + "Result of COPY is: %s" % [ res.res_status(res.result_status) ]
    end
  end
end