sql >> Database teknologi >  >> RDS >> PostgreSQL

Masseindsats i Postgres med brianc/node-postgres

Jeg søgte efter det samme spørgsmål, men fandt ingen løsning endnu. Med async-biblioteket er det meget enkelt at bruge forespørgslen flere gange og udføre den nødvendige fejlhåndtering.

Måske hjælper denne kodevariant.(for at indsætte 10.000 små json-objekter i en tom database tog det 6 sek.).

Christoph

function insertData(item,callback) {
  client.query('INSERT INTO subscriptions (subscription_guid, employer_guid, employee_guid)
       values ($1,$2,$3)', [
        item.subscription_guid,
        item.employer_guid,
        item.employee_guid
       ], 
  function(err,result) {
    // return any err to async.each iterator
    callback(err);
  })
}
async.each(datasetArr,insertData,function(err) {
  // Release the client to the pg module
  done();
  if (err) {
    set_response(500, err, res);
    logger.error('error running query', err);
    return console.error('error running query', err);
  }
  logger.info('subscription with created');
  set_response(201);
})


  1. ) Operatør for begyndere

  2. java.lang.UnsupportedOperationException:org.hibernate.dialect.Oracle10gDialect understøtter ikke resultatsæt via lagrede procedurer

  3. Python cx_Oracle forberedt erklæring med qmark

  4. Android - SQLite - VÆLG MELLEM Dato1 OG Dato2