gpt4 book ai didi

javascript - 使用准备好的语句插入多行

转载 作者:行者123 更新时间:2023-11-29 13:54:58 24 4
gpt4 key购买 nike

我有一个对象数组,每个对象都有多个属性。例如:

var obj = [{a : '1', b : '2'},{a : '3', b : '4'}];

为了匹配数据库表的顺序,我正在生成一个新数组,其中包含批量插入所需的顺序。

var bulkInsert = function(arrData){
var orderedData = [];
arrData.forEach(function(obj){
orderedData.push(obj.b + ',' + obj.a);
});
return orderedData;
};

现在,我想将对象的输出数组批量插入到 postgres 表中:

client.query("INSERT INTO sometable(b, a) VALUES" +
" ($1, $2)", [orderedData], function (err, result) {
if (err) {
return handleError(err, client, done);
}
});

但是,这会引发错误:

error fetching client from pool { [error: bind message supplies 1 parameters, but prepared statement "" requires 2]

串行版本工作正常,如果每次插入都在一个循环中迭代,但对于较大的数组,它会很慢..

最佳答案

尝试从数组中删除方括号。它已经是一个数组,你不需要它们

关于javascript - 使用准备好的语句插入多行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34054023/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com