繁体   English   中英

如何在不知道 model 的情况下将 JSON 数组批量插入 mysql 数据库并进行续集?

[英]How to Bulk insert JSON array into mysql database with sequelize without knowing its model?

我有一个包含超过 50000 条记录的 JSON 数组。 有什么方法可以使用续集将动态数据批量插入数据库,因为续集 object 没有 model?

如果我理解正确,您有大量 json 对象要插入到 mysql 中。 假设 JSON 结构对于数组的所有元素都是相同的,您可以在将对象操作为适当的sequelize.query后使用 sequelize.query 来获取列名和值:

const colNames = Object.keys(bigArrayOfObjects[0]).map(elem => '`' + elem + '`').join(', ')

const rowValues = bigArrayOfObjects.map(row => Object.values(obj))

await sequelize.query(`
      INSERT INTO company (${colNames}) VALUES ${values.map(() => '(?)').join(',')}
    `, {
    replacements: values,
    type: Sequelize.QueryTypes.INSERT,
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM