我正在为我的应用程序开发一个后端路由,它需要添加多行(从客户端接收的数组中的每一项对应一行).我的第一个 idea 是对我的数据进行for
次循环,并 for each 数组项执行数据库查询,如下所示:
router.get('api/postGuests', (req, res) => {
const arrayOfPeople = req.body;
// arrayOfPeople looks like this for example: [{name: Jason, age: 24}, {name: Tyler, age: 34}]
for (let i=0; i<arrayOfPeople.length; i++) {
db.query('INSERT INTO people (name, age) VALUES (?, ?)', [arrayofPeople[i].name, arrayOfPeople[i].age])
}
})
问题是,我不认为为每一行进行单独的查询是高效的,而且考虑到这些查询是异步的,我可以看到随着我的扩展,会出现很多问题.
有人能就如何最好地处理这种情况给我一些建议吗?谢谢!