从react native和node js在mySQL数据库中插入多条记录
我有一个发票应用程序,您可以将许多产品添加到同一发票(账单) 在mySQL中,我有一个products表,我想在其中添加我在发票中添加的每个产品。 我已成功地将所有产品保存在一个阵列中从react native和node js在mySQL数据库中插入多条记录,mysql,node.js,reactjs,react-native,Mysql,Node.js,Reactjs,React Native,我有一个发票应用程序,您可以将许多产品添加到同一发票(账单) 在mySQL中,我有一个products表,我想在其中添加我在发票中添加的每个产品。 我已成功地将所有产品保存在一个阵列中 Array [ Object { "amt": "1", "desc": "Item1", "index": 0, "qty": "1",
Array [
Object {
"amt": "1",
"desc": "Item1",
"index": 0,
"qty": "1",
},
Object {
"amt": "2",
"desc": "Item2",
"index": 1,
"qty": "2",
},
Object {
"amt": "3",
"desc": "Item3",
"index": 2,
"qty": "3",
},
Object {
"amt": "4",
"desc": "Item4",
"index": 3,
"qty": "4",
},
]
单击按钮,我想发送一个api,在mySQL的表中插入数据
app.post("/addproducts", (req, res) => {
let product= req.body;
var sql =
"INSERT INTO products (amt, desc, qty, invoiceId) VALUES(?, ?, ?, ?);";
mysqlConnection.query(
sql,
[
product.invoiceId,
product.amt,
product.desc,
product.qty,
],
(err, rows, fields) => {
if (!err) {
res.send(rows);
});
} else {
res.send(err);
}
}
);
});
如何修复api以逐个遍历数组并将所有产品插入表中
备注:发票id是产品表中的外键(不要介意)
这是来自前端的post api
如何映射数据数组(我在开始时显示)并逐个发送对象?使用嵌套数组可以进行批量插入 在您的情况下,数据应如下所示:
var sql =
"INSERT INTO products (amt, desc, qty, invoiceId) VALUES(?, ?, ?, ?);";
let values = [
['1', 'Item1', '0', '1'],
['2', 'Item2', '1', '2'],
...
]
mysqlConnection.query(sql, values, ...)
(关心字段顺序)某种循环似乎是一个很可能的起点是的,但是我如何将数据从前端发送到后端?您能帮我吗?您的问题没有提到。你的问题要更准确,我会帮你的。这里没有必要在堆栈溢出的私有消息。堆栈溢出不是论坛或社交网络。这是Q&AThis edit正在添加另一个不相关的问题,您应该将其添加到另一个线程中,因为它与向MySQL插入多个记录没有任何关系
var sql =
"INSERT INTO products (amt, desc, qty, invoiceId) VALUES(?, ?, ?, ?);";
let values = [
['1', 'Item1', '0', '1'],
['2', 'Item2', '1', '2'],
...
]
mysqlConnection.query(sql, values, ...)