Node.js 如何将多行插入mysql?
我的代码:Node.js 如何将多行插入mysql?,node.js,Node.js,我的代码: let sql = 'INSERT INTO tb_tel_std (age, tel) values (?,?)'; let datas = [{ age: req.body.age, tel: req.body.tel }] console.log(datas); db.query(sql, [datas.age, datas.tel], (err, result) => { if (err) { console.log(err
let sql = 'INSERT INTO tb_tel_std (age, tel) values (?,?)';
let datas = [{
age: req.body.age,
tel: req.body.tel
}]
console.log(datas);
db.query(sql, [datas.age, datas.tel], (err, result) => {
if (err) {
console.log(err);
return res.send(err);
} else {
res.json(result);
}
});
})
我得到这个错误:
Error: [ { age: [ '123', '456' ], tel: [ '54321', '88888' ] } ]
Error: ER_BAD_NULL_ERROR: Column 'age' cannot be null
code: 'ER_BAD_NULL_ERROR',
errno: 1048,
sqlMessage: "Column 'age' cannot be null",
sqlState: '23000',
index: 0,
sql: 'INSERT INTO tb_tel_std (age, tel) values (NULL,NULL)'
您已使用单个对象创建了
datas
数组。您可以使用datas.age
访问它,但此数组对象上没有age
。您要么需要数据[0].age
,要么不将其作为数组,因为没有理由将其设置为数组,要么完全跳过数据值。