我想使用 sequelize.js 和 mysql2 更新数据库记录 我无权访问模型文件夹,或者它们尚未制作,所以有没有办法更新找不到解决方案 我检查的所有解决方案都带有模型名称点更新
var Book = db.define(‘books’, {
title: {
type: Sequelize.STRING
},
pages: {
type: Sequelize.INTEGER
}
})
Book.update(
{title: req.body.title},
{returning: true, where: {id: req.params.bookId} }
)
.then(function([ rowsUpdate, [updatedBook] ]) {
res.json(updatedBook)
})
.catch(e => console.log(e));
我希望您的专家解决方案。
有关基于版本的最新文档,请参阅Sequelize ORM。
更新 - v6
您可以使用query model(preferred)
和raw queries
来实现此目的。
// Using query model(User)
await User.update({ y: 42 }, {
where: {
x: 12
}
});
// Using raw query
const [results, metadata] = await sequelize.query("UPDATE users SET y = 42 WHERE x = 12");
// Results will be an empty array and metadata will contain the number of affected rows.
旧 - v3
sequelize.query("UPDATE users SET y = 42 WHERE x = 12").spread(function(results, metadata) {
// Results will be an empty array and metadata will contain the number of affected rows.
})
参考:后续化原始查询