有没有办法从node.js在Postgresql中进行批量插入?

问题描述:

我使用pg模块(和承诺版本pg-promise-strict)。有没有办法从node.js在Postgresql中进行批量插入?

当我需要插入1k条记录时,我必须一个接一个地发送到服务器。

我不能建立一个1k记录插入,因为我的组织策略:数据必须单独sended(如https://github.com/brianc/node-postgres/wiki/Client#method-query-parameterized看到)

我尝试写一个plsql功能,做批量插入并发送所有在阵列中的数据(或在一个字符串,我尝试boths):

client.query("select bulk_insert", [allTheData], cb); 

我得到以下信息:

index row requires 38656 bytes, maximum size is 8191 

注意

  • 数据库在其他服务器
  • 我只能够与德Postgres的端口连接
  • 我不能像sh psql < "COPY..."

执行的东西我怎么能请批量插入单独发送数据?

我想你应该看看一个来自同一作者的插件,如同你的数据库客户端库:https://github.com/brianc/node-pg-copy-streams其中的COPY这个命令恰好是。

+0

来自json对象而非文件! –