【问题标题】:how to insert multiple records from json array in sequelize?如何在sequelize中从json数组中插入多条记录?
【发布时间】:2020-09-20 03:15:39
【问题描述】:

学习 sequelize ORM,比如请求体是否有值数组,如下所示。当我们在请求正文中的数组中有多个用户时,如何将其保存到数据库中,我们是遍历数组项还是有某种函数可以一次创建多个记录?

//post('/save', async(request, response) => {
   
    let new_users = request.body.users; 
    
})

请求正文

{
  "category": "students", 
   "department" : "engineering", 
  "users" : [ {name: foo, age:12}, {name:bar , age:18}]
}

用户表列

id
category
department
name
age

【问题讨论】:

    标签: node.js sequelize.js


    【解决方案1】:

    您可以使用模型的静态bulkCreate 方法一次创建多个记录:

    await userModel.bulkCreate(users)
    

    bulkCreate

    【讨论】:

    • 谢谢。那行得通。一个后续问题 - 对于以类似方式更新,执行此操作的步骤是什么。如果您可以提供一些步骤或伪代码,如果需要,我可以提出一个新问题。
    • 你可以试试同样的方法
    • 谢谢,理论上如此。如果我使用相同的函数进行更新,它只会用新值更新那些值或创建尚未存在的新值
    • 我想它会类似于 INSERT .. ON EXISTING UPDATE 并且它会查看主键相等性。 SQL 语法取决于您使用的 DBMS
    猜你喜欢
    • 2021-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-09-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-04
    相关资源
    最近更新 更多