gpt4 book ai didi

mysql - Node.js-mysql : Bad field Error

转载 作者:行者123 更新时间:2023-11-29 18:00:16 24 4
gpt4 key购买 nike

我解析一个大的 csv 并将每行插入到我的 mysql 表中。

解析后我做了很多计算和转换并将其保存到一个新对象

  obj.push({                                                         
"ID": value.id,
"col1": value.calc1,
... });

对象完成后我会:

async.forEach(obj, function (Insertobj, callback) {

var query = conn.query('INSERT INTO table SET ?', Insertobj);

},function (err){
if (err) {
console.log(err);
console.log('failed to process');
}}

运行完 obj 后我得到 =>

Error: ER_BAD_FIELD_ERROR: Unknown column 'NaN' in 'field list'..

但是他将完整的对象插入到我的表中!我没有任何名为 NaN 或空列的列。我该如何调试它?我尝试将console.log设置为err.sql,但他打印“未定义”。在连接中使用 debug:true 对我没有帮助。

最佳答案

我认为您误解了如何使用 Node js 模块转义 mysql 值。该错误是由于您没有指定要更新的列。除此之外,应该使用数组而不是对象来填充转义值。值按照它们在查询中转义的顺序排列。您的代码可能如下所示:

    valuesarray.push([                                                         
value.id,
value.calc1
]);

async.forEach(valuesarray, function ( insertarray, callback ) {

var query = conn.query('INSERT INTO table SET ID = ?, col1 =
?', insertarray);

},function (err){
if (err) {
console.log(err);
console.log('failed to process');
}
});

关于mysql - Node.js-mysql : Bad field Error,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48429473/

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