Sequelize 如何插入更新多行?

Ale*_*dre 5 postgresql node.js sequelize.js

我尝试使用 Sequelize 在我的数据库中插入多行,但由于某些约束违规,for 循环卡住了。

        let dataset = [
             ["2016-01-01","987"],
             ["2016-01-02","987"],
             ["2016-01-03","987"],
             ["2016-01-04","987"],
             ["2016-01-05","987"],
             ["2016-01-06","987"],
             ["2016-01-07","987"],
             ...
        ];
        for(let row of dataset) {       
            model.findOrCreate({
                where: {date_prc: row[0]},
                defaults: {value: row[1]}
            });
        }
Run Code Online (Sandbox Code Playgroud)

当我查看 SQL 日志时,它正在检查日期是否已插入,如果未插入,则它正在尝试插入该行。但在某些情况下,不是插入缺失的日期行,而是插入下一个日期。

例如在我看到的日志中:

 select 2016-01-03 // this one is missing
 select 2016-01-04 // this one is not missing
 insert 2016-01-04 // it is inserting 2016-01-04 instead of 2016-01-03
Run Code Online (Sandbox Code Playgroud)