我想知道是否有更好的方法首先检查数据库,如果我要插入的记录存在,以避免重复。这样我就可以插入唯一的记录。
现在我所做的是通过if语句进行原始查询,以检查数据库是否通过了插入记录的条件:
const addName = function(name, amount) {
sequelize.query(`SELECT * FROM names WHERE name="${name}"`, { type: sequelize.QueryTypes.SELECT})
.then(names => {
if (names.length === 0) {
sequelize.query(
`INSERT INTO names (name, amount) VALUES('${name}','${amount}')`, {
type: Sequelize.QueryTypes.INSERT
}
).then(function (data) {
console.log('inserted STEAMER data---> ', data);
});
} else {
console.log('Duplicate records >>>>>>');
}
});
};
有没有其他方法可以通过sequelize js实现这一点?
1条答案
按热度按时间ghg1uchk1#
我想你应该用orm的续集方式打个电话
findOrCreate
模型上的方法。例子:
db.js
:app.js
(在expressjs示例中):阅读此入门,并保存您的一天与随时可用的方法续集orm